TSTP Solution File: ALG267^1 by Vampire---4.8

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : Vampire---4.8
% Problem  : ALG267^1 : TPTP v8.1.2. Bugfixed v5.2.0.
% Transfm  : none
% Format   : tptp:raw
% Command  : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s

% Computer : n011.cluster.edu
% Model    : x86_64 x86_64
% CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 2.10GHz
% Memory   : 8042.1875MB
% OS       : Linux 3.10.0-693.el7.x86_64
% CPULimit : 300s
% WCLimit  : 300s
% DateTime : Sun May  5 04:13:29 EDT 2024

% Result   : Theorem 2.05s 0.64s
% Output   : Refutation 2.05s
% Verified : 
% SZS Type : Refutation
%            Derivation depth      :   52
%            Number of leaves      :   99
% Syntax   : Number of formulae    :  284 ( 221 unt;  57 typ;   0 def)
%            Number of atoms       : 6110 (1255 equ;   0 cnn)
%            Maximal formula atoms :   37 (  26 avg)
%            Number of connectives : 27062 ( 216   ~;   0   |; 103   &;19774   @)
%                                         (   0 <=>;2970  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   37 (   2 avg)
%            Number of types       :    3 (   2 usr)
%            Number of type conns  : 1795 (1795   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :   96 (  91 usr;  46 con; 0-4 aty)
%                                         (3955  !!;  44  ??;   0 @@+;   0 @@-)
%            Number of variables   : 4454 (4178   ^ 273   !;   2   ?;4454   :)
%                                         (   1  !>;   0  ?*;   0  @-;   0  @+)

% Comments : 
%------------------------------------------------------------------------------
thf(type_def_5,type,
    term: $tType ).

thf(type_def_7,type,
    subst: $tType ).

thf(func_def_0,type,
    term: $tType ).

thf(func_def_1,type,
    subst: $tType ).

thf(func_def_2,type,
    one: term ).

thf(func_def_3,type,
    ap: term > term > term ).

thf(func_def_4,type,
    lam: term > term ).

thf(func_def_5,type,
    sub: term > subst > term ).

thf(func_def_6,type,
    id: subst ).

thf(func_def_7,type,
    sh: subst ).

thf(func_def_8,type,
    push: term > subst > subst ).

thf(func_def_9,type,
    comp: subst > subst > subst ).

thf(func_def_10,type,
    var: term > $o ).

thf(func_def_18,type,
    hoasap: subst > term > subst > term > term ).

thf(func_def_73,type,
    hoaslam: subst > ( subst > term > term ) > term ).

thf(func_def_86,type,
    hoasinduction_p_and_p_prime: ( subst > term > subst > $o ) > ( term > $o ) > $o ).

thf(func_def_107,type,
    hoasvar: subst > term > subst > $o ).

thf(func_def_121,type,
    pushprop_p_and_p_prime: term > subst > ( term > $o ) > ( term > $o ) > $o ).

thf(func_def_142,type,
    sK1: ( term > $o ) > term ).

thf(func_def_143,type,
    sK2: ( term > $o ) > term ).

thf(func_def_144,type,
    sK3: ( term > $o ) > term ).

thf(func_def_145,type,
    sK4: ( term > $o ) > term ).

thf(func_def_146,type,
    sK5: ( term > $o ) > term ).

thf(func_def_147,type,
    sK6: ( term > $o ) > term ).

thf(func_def_148,type,
    sK7: ( term > $o ) > term ).

thf(func_def_149,type,
    sK8: ( term > $o ) > term ).

thf(func_def_150,type,
    sK9: ( term > $o ) > subst > term ).

thf(func_def_151,type,
    sK10: ( subst > term > term ) > term ).

thf(func_def_152,type,
    sK11: ( subst > term > term ) > subst ).

thf(func_def_153,type,
    sK12: ( subst > term > term ) > subst ).

thf(func_def_154,type,
    sK13: ( subst > term > subst > $o ) > subst ).

thf(func_def_155,type,
    sK14: ( subst > term > subst > $o ) > subst ).

thf(func_def_156,type,
    sK15: ( subst > term > subst > $o ) > term ).

thf(func_def_157,type,
    sK16: ( subst > term > subst > $o ) > term ).

thf(func_def_158,type,
    sK17: ( subst > term > subst > $o ) > subst ).

thf(func_def_159,type,
    sK18: ( subst > term > subst > $o ) > subst ).

thf(func_def_160,type,
    sK19: ( subst > term > subst > $o ) > subst ).

thf(func_def_161,type,
    sK20: ( subst > term > subst > $o ) > term ).

thf(func_def_162,type,
    sK21: ( subst > term > subst > $o ) > subst ).

thf(func_def_163,type,
    sK22: ( subst > term > subst > $o ) > subst ).

thf(func_def_164,type,
    sK23: ( subst > term > subst > $o ) > term ).

thf(func_def_165,type,
    sK24: ( subst > term > subst > $o ) > subst ).

thf(func_def_166,type,
    sK25: ( subst > term > subst > $o ) > term ).

thf(func_def_167,type,
    sK26: ( subst > term > subst > $o ) > term ).

thf(func_def_168,type,
    sK27: ( subst > term > subst > $o ) > subst ).

thf(func_def_169,type,
    sK28: ( subst > term > subst > $o ) > subst ).

thf(func_def_170,type,
    sK29: ( subst > term > subst > $o ) > term ).

thf(func_def_171,type,
    sK30: ( subst > term > subst > $o ) > subst ).

thf(func_def_172,type,
    sK31: ( subst > term > subst > $o ) > subst ).

thf(func_def_173,type,
    sK32: term ).

thf(func_def_174,type,
    sK33: ( subst > term > term ) > subst ).

thf(func_def_175,type,
    sK34: ( subst > term > term ) > term ).

thf(func_def_176,type,
    sK35: ( subst > term > term ) > subst ).

thf(func_def_177,type,
    sK36: ( subst > term > term ) > subst ).

thf(func_def_178,type,
    sK37: ( subst > term > term ) > subst ).

thf(func_def_179,type,
    sK38: ( subst > term > term ) > term ).

thf(func_def_180,type,
    ph39: 
      !>[X0: $tType] : X0 ).

thf(f1209,plain,
    $false,
    inference(equality_resolution,[],[f1199]) ).

thf(f1199,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != sK32 ),
    inference(forward_demodulation,[],[f1198,f474]) ).

thf(f474,plain,
    ! [X1: term] :
      ( ( sub @ X1 @ id )
      = X1 ),
    inference(equality_proxy_clausification,[],[f473]) ).

thf(f473,plain,
    ! [X1: term] :
      ( ( ( sub @ X1 @ id )
        = X1 )
      = $true ),
    inference(beta_eta_normalization,[],[f472]) ).

thf(f472,plain,
    ! [X1: term] :
      ( $true
      = ( ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 )
        @ X1 ) ),
    inference(pi_clausification,[],[f471]) ).

thf(f471,plain,
    ( $true
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(binary_proxy_clausification,[],[f468]) ).

thf(f468,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sub @ ( lam @ Y1 ) @ Y0 )
                  = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                        = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                        = Y0 ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                              = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                   => ( ( id
                        = ( push @ one @ sh ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                              = Y0 ) )
                       => ( ( var @ one )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( var @ Y0 )
                                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( Y0 @ one )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y3 @ Y1 )
                                                    = ( ap @ Y0 @ Y2 ) )
                                                 => ( Y3 = Y0 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y1 @ Y3 )
                                                      = ( ap @ Y0 @ Y2 ) )
                                                   => ( Y3 = Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( lam @ Y1 )
                                                = ( lam @ Y0 ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( sub @ Y1 @ sh )
                                                  = ( sub @ Y0 @ sh ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( lam @ Y2 )
                                                     != ( ap @ Y0 @ Y1 ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ~ ( var @ ( lam @ Y0 ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ ( term > $o )
                                                      @ ^ [Y1: term > $o] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                             => ( ( Y1 @ Y2 )
                                                               => ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ Y1 )
                                                               => ( Y0 @ Y1 ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( ( Y0 @ Y1 )
                                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ term @ Y0 ) ) ) ) )
                                                   => ( ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                      = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ Y0 @ id )
                                                              = Y0 ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( ( comp @ id @ Y0 )
                                                              = Y0 ) ) )
                                                     => ( ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( ( sub @ Y0 @ id )
                                                                = Y0 ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                           => ( Y2 = Y0 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                             => ( Y3 = Y1 ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                   => ( !! @ ( subst > term > term )
                                                                      @ ^ [Y1: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y4: term] :
                                                                                        ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                        = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                         => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                              = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                           => ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( Y0 @ Y2 @ Y3 )
                                                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                               != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                             => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                           => ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                               => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                             => ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( ( var @ Y1 )
                                                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                             => ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                 => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                 => ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                                             => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( ?? @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f459]) ).

thf(f459,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                = Y1 ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( sub @ ( lam @ Y1 ) @ Y0 )
                    = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                          = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                          = Y0 ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                                = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                  = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                     => ( ( id
                          = ( push @ one @ sh ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                = Y0 ) )
                         => ( ( var @ one )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( var @ Y0 )
                                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( Y0 @ one )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ Y3 @ Y1 )
                                                      = ( ap @ Y0 @ Y2 ) )
                                                   => ( Y3 = Y0 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y1 @ Y3 )
                                                        = ( ap @ Y0 @ Y2 ) )
                                                     => ( Y3 = Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( ( lam @ Y1 )
                                                  = ( lam @ Y0 ) )
                                               => ( Y1 = Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( sub @ Y1 @ sh )
                                                    = ( sub @ Y0 @ sh ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( lam @ Y2 )
                                                       != ( ap @ Y0 @ Y1 ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ~ ( var @ ( lam @ Y0 ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( ( Y0 @ Y1 )
                                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ ( term > $o )
                                                        @ ^ [Y1: term > $o] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                               => ( ( Y1 @ Y2 )
                                                                 => ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( term > $o )
                                                      @ ^ [Y0: term > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y1 )
                                                                   => ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term @ Y0 ) ) ) ) )
                                                     => ( ( ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                        = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ Y0 @ id )
                                                                = Y0 ) )
                                                          & ( !! @ subst
                                                            @ ^ [Y0: subst] :
                                                                ( ( comp @ id @ Y0 )
                                                                = Y0 ) ) )
                                                       => ( ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( ( sub @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                             => ( Y2 = Y0 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                     => ( !! @ ( subst > term > term )
                                                                        @ ^ [Y1: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y4: term] :
                                                                                          ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                          = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                           => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                                = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                             => ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( ( Y0 @ Y2 @ Y3 )
                                                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                                 != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y1: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y3: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                               => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                             => ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                                 => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                 => ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( ( var @ Y1 )
                                                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                               => ( ( !! @ subst
                                                                                    @ ^ [Y1: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y2: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                   => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                                               => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y0: term] :
                                                                                ( ?? @ ( subst > term > term )
                                                                                @ ^ [Y1: subst > term > term] :
                                                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f458]) ).

thf(f458,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                    = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                  = Y1 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ ( lam @ Y1 ) @ Y0 )
                      = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                            = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                                  = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                    = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y3 @ Y1 )
                                                        = ( ap @ Y0 @ Y2 ) )
                                                     => ( Y3 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y1 @ Y3 )
                                                          = ( ap @ Y0 @ Y2 ) )
                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y2 )
                                                         != ( ap @ Y0 @ Y1 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ ( term > $o )
                                                          @ ^ [Y1: term > $o] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                                 => ( ( Y1 @ Y2 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                          = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) ) )
                                                         => ( ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) )
                                                              & ( !! @ subst
                                                                @ ^ [Y0: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                               => ( Y2 = Y0 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                                 => ( Y3 = Y1 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y4: term] :
                                                                                            ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                            = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                             => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                                  = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                               => ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                                   != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ Y1 )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                                  ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                 => ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                     => ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( ?? @ ( subst > term > term )
                                                                                  @ ^ [Y1: subst > term > term] :
                                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(not_proxy_clausification,[],[f457]) ).

thf(f457,plain,
    ( $true
    = ( ~ ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                      = Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( sub @ ( lam @ Y1 ) @ Y0 )
                          = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                                = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                                = Y0 ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                                      = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                        = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                           => ( ( id
                                = ( push @ one @ sh ) )
                             => ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                      = Y0 ) )
                               => ( ( var @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( var @ Y0 )
                                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( Y0 @ one )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ Y3 @ Y1 )
                                                            = ( ap @ Y0 @ Y2 ) )
                                                         => ( Y3 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ Y1 @ Y3 )
                                                              = ( ap @ Y0 @ Y2 ) )
                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( ( lam @ Y1 )
                                                        = ( lam @ Y0 ) )
                                                     => ( Y1 = Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( ( sub @ Y1 @ sh )
                                                          = ( sub @ Y0 @ sh ) )
                                                       => ( Y1 = Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ Y2 )
                                                             != ( ap @ Y0 @ Y1 ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ~ ( var @ ( lam @ Y0 ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term @ Y0 ) ) ) ) )
                                                     => ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ ( term > $o )
                                                              @ ^ [Y1: term > $o] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                                     => ( ( Y1 @ Y2 )
                                                                       => ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( term > $o )
                                                            @ ^ [Y0: term > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y1 )
                                                                         => ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( var @ Y3 )
                                                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( term > $o )
                                                              @ ^ [Y0: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ Y1 ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( ( Y0 @ Y1 )
                                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ Y2 )
                                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                                           => ( ( ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                              = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ Y0 @ id )
                                                                      = Y0 ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ id @ Y0 )
                                                                      = Y0 ) ) )
                                                             => ( ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ( sub @ Y0 @ id )
                                                                        = Y0 ) )
                                                                  & ( !! @ subst
                                                                    @ ^ [Y0: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                                   => ( Y2 = Y0 ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ( !! @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y4: term] :
                                                                                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                                 => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                                      = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                                   => ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( ( Y0 @ Y2 @ Y3 )
                                                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > term )
                                                                          @ ^ [Y0: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                                       != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > term )
                                                                            @ ^ [Y0: subst > term > term] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                                    ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y2: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y3: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                                     => ( ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                       => ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ Y1 )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                                      ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                     => ( ( !! @ subst
                                                                                          @ ^ [Y1: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y2: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y3: subst] :
                                                                                                      ( !! @ subst
                                                                                                      @ ^ [Y4: subst] :
                                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                                       => ( ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                                         => ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y0: term] :
                                                                                      ( ?? @ ( subst > term > term )
                                                                                      @ ^ [Y1: subst > term > term] :
                                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(beta_eta_normalization,[],[f456]) ).

thf(f456,plain,
    ( $true
    = ( ~ ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                      = Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( sub @ ( lam @ Y1 ) @ Y0 )
                          = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                                = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                                = Y0 ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                                      = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                        = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                           => ( ( id
                                = ( push @ one @ sh ) )
                             => ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                      = Y0 ) )
                               => ( ( var @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( var @ Y0 )
                                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( Y0 @ one )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ Y3 @ Y1 )
                                                            = ( ap @ Y0 @ Y2 ) )
                                                         => ( Y3 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ Y1 @ Y3 )
                                                              = ( ap @ Y0 @ Y2 ) )
                                                           => ( Y3 = Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( ( lam @ Y1 )
                                                        = ( lam @ Y0 ) )
                                                     => ( Y1 = Y0 ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( ( sub @ Y1 @ sh )
                                                          = ( sub @ Y0 @ sh ) )
                                                       => ( Y1 = Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( lam @ Y2 )
                                                             != ( ap @ Y0 @ Y1 ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ~ ( var @ ( lam @ Y0 ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ Y1 ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( ( Y0 @ Y1 )
                                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ ( term > $o )
                                                              @ ^ [Y1: term > $o] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( var @ Y3 )
                                                                           => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                                     => ( ( Y1 @ Y2 )
                                                                       => ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( term > $o )
                                                            @ ^ [Y0: term > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y1 )
                                                                         => ( ( Y0 @ Y2 )
                                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( var @ Y3 )
                                                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( term > $o )
                                                              @ ^ [Y0: term > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ Y1 ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( ( Y0 @ Y1 )
                                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ Y2 )
                                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                           => ( ( ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                              = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ Y0 @ id )
                                                                      = Y0 ) )
                                                                & ( !! @ subst
                                                                  @ ^ [Y0: subst] :
                                                                      ( ( comp @ id @ Y0 )
                                                                      = Y0 ) ) )
                                                             => ( ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ( sub @ Y0 @ id )
                                                                        = Y0 ) )
                                                                  & ( !! @ subst
                                                                    @ ^ [Y0: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                        @ id
                                                                                        @ Y2
                                                                                        @ id
                                                                                        @ Y3 )
                                                                                      = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                        @ id
                                                                                        @ Y0
                                                                                        @ id
                                                                                        @ Y1 ) )
                                                                                   => ( Y2 = Y0 ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                          @ id
                                                                                          @ Y2
                                                                                          @ id
                                                                                          @ Y3 )
                                                                                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                          @ id
                                                                                          @ Y0
                                                                                          @ id
                                                                                          @ Y1 ) )
                                                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ( !! @ ( subst > term > term )
                                                                              @ ^ [Y1: subst > term > term] :
                                                                                  ( ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y4: term] :
                                                                                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                                 => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                        @ id
                                                                                        @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                                                                                      = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                        @ id
                                                                                        @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) ) )
                                                                                   => ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( ( Y0 @ Y2 @ Y3 )
                                                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                     => ( ( !! @ ( subst > term > term )
                                                                          @ ^ [Y0: subst > term > term] :
                                                                              ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y2: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                          @ id
                                                                                          @ Y2
                                                                                          @ id
                                                                                          @ Y1 )
                                                                                       != ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                          @ id
                                                                                          @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) ) ) ) ) ) )
                                                                       => ( ( !! @ ( subst > term > term )
                                                                            @ ^ [Y0: subst > term > term] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y3: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                               => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                    @ id
                                                                                    @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                    @ id ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                        @ id
                                                                                        @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                          @ id
                                                                                          @ Y0
                                                                                          @ id
                                                                                          @ Y1 )
                                                                                        @ id ) ) )
                                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                                    ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y2: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y3: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                                     => ( ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                                @ id
                                                                                                @ Y1
                                                                                                @ id )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                       => ( !! @ term
                                                                                          @ ^ [Y1: term] :
                                                                                              ( ( var @ Y1 )
                                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                                      ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y2: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y3: subst] :
                                                                                                    ( !! @ subst
                                                                                                    @ ^ [Y4: subst] :
                                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                     => ( ( !! @ subst
                                                                                          @ ^ [Y1: subst] :
                                                                                              ( !! @ term
                                                                                              @ ^ [Y2: term] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y3: subst] :
                                                                                                      ( !! @ subst
                                                                                                      @ ^ [Y4: subst] :
                                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                                       => ( ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id
                                                                                                        @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                                          @ id
                                                                                                          @ Y1
                                                                                                          @ id
                                                                                                          @ Y2 )
                                                                                                        @ id ) ) ) ) )
                                                                                         => ( !! @ term
                                                                                            @ ^ [Y1: term] :
                                                                                                ( !! @ term
                                                                                                @ ^ [Y2: term] :
                                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y0: term] :
                                                                                      ( ?? @ ( subst > term > term )
                                                                                      @ ^ [Y1: subst > term > term] :
                                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f366,f444]) ).

thf(f444,plain,
    ( hoasinduction_lem3b_gthm
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                    = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
                  = Y1 ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( sub @ ( lam @ Y1 ) @ Y0 )
                      = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                            = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                            = Y0 ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                                  = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                                    = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                       => ( ( id
                            = ( push @ one @ sh ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                                  = Y0 ) )
                           => ( ( var @ one )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( var @ Y0 )
                                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( Y0 @ one )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ Y3 @ Y1 )
                                                        = ( ap @ Y0 @ Y2 ) )
                                                     => ( Y3 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ Y1 @ Y3 )
                                                          = ( ap @ Y0 @ Y2 ) )
                                                       => ( Y3 = Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( ( lam @ Y1 )
                                                    = ( lam @ Y0 ) )
                                                 => ( Y1 = Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( ( sub @ Y1 @ sh )
                                                      = ( sub @ Y0 @ sh ) )
                                                   => ( Y1 = Y0 ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( lam @ Y2 )
                                                         != ( ap @ Y0 @ Y1 ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ~ ( var @ ( lam @ Y0 ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ ( term > $o )
                                                          @ ^ [Y1: term > $o] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                                 => ( ( Y1 @ Y2 )
                                                                   => ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( var @ Y3 )
                                                                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( term > $o )
                                                        @ ^ [Y0: term > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y1 )
                                                                     => ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( var @ Y3 )
                                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( term > $o )
                                                          @ ^ [Y0: term > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ Y1 ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ Y2 )
                                                                         => ( ( Y0 @ Y1 )
                                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ Y2 )
                                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) )
                                                       => ( ( ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                          = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ Y0 @ id )
                                                                  = Y0 ) )
                                                            & ( !! @ subst
                                                              @ ^ [Y0: subst] :
                                                                  ( ( comp @ id @ Y0 )
                                                                  = Y0 ) ) )
                                                         => ( ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ( sub @ Y0 @ id )
                                                                    = Y0 ) )
                                                              & ( !! @ subst
                                                                @ ^ [Y0: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y2
                                                                                    @ id
                                                                                    @ Y3 )
                                                                                  = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                    @ id
                                                                                    @ Y0
                                                                                    @ id
                                                                                    @ Y1 ) )
                                                                               => ( Y2 = Y0 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y2
                                                                                      @ id
                                                                                      @ Y3 )
                                                                                    = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                                                                                      @ id
                                                                                      @ Y0
                                                                                      @ id
                                                                                      @ Y1 ) )
                                                                                 => ( Y3 = Y1 ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > term )
                                                                    @ ^ [Y0: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                       => ( !! @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ term
                                                                                        @ ^ [Y4: term] :
                                                                                            ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                            = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                             => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                                                                                  = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                                                                                    @ id
                                                                                    @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) ) )
                                                                               => ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y3: term] :
                                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > term )
                                                                      @ ^ [Y0: subst > term > term] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                      @ id
                                                                                      @ Y2
                                                                                      @ id
                                                                                      @ Y1 )
                                                                                   != ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                                                                                      @ id
                                                                                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > term )
                                                                        @ ^ [Y0: subst > term > term] :
                                                                            ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                           => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
                                                                                @ id
                                                                                @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                                                                                  @ id
                                                                                  @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
                                                                                @ id ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y0: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                    @ id
                                                                                    @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                                                                                      @ id
                                                                                      @ Y0
                                                                                      @ id
                                                                                      @ Y1 )
                                                                                    @ id ) ) )
                                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                                ( ( !! @ subst
                                                                                  @ ^ [Y1: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y2: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y3: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y4: subst] :
                                                                                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                               => ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                                 => ( ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                                                                                            @ id
                                                                                            @ Y1
                                                                                            @ id )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                                   => ( !! @ term
                                                                                      @ ^ [Y1: term] :
                                                                                          ( ( var @ Y1 )
                                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                                  ( ( !! @ term
                                                                                    @ ^ [Y1: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y2: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y3: subst] :
                                                                                                ( !! @ subst
                                                                                                @ ^ [Y4: subst] :
                                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                                 => ( ( !! @ subst
                                                                                      @ ^ [Y1: subst] :
                                                                                          ( !! @ term
                                                                                          @ ^ [Y2: term] :
                                                                                              ( !! @ subst
                                                                                              @ ^ [Y3: subst] :
                                                                                                  ( !! @ subst
                                                                                                  @ ^ [Y4: subst] :
                                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                                   => ( ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id
                                                                                                    @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                                                                                                      @ id
                                                                                                      @ Y1
                                                                                                      @ id
                                                                                                      @ Y2 )
                                                                                                    @ id ) ) ) ) )
                                                                                     => ( !! @ term
                                                                                        @ ^ [Y1: term] :
                                                                                            ( !! @ term
                                                                                            @ ^ [Y2: term] :
                                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y0: term] :
                                                                                  ( ?? @ ( subst > term > term )
                                                                                  @ ^ [Y1: subst > term > term] :
                                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f358,f341,f348,f372,f355,f410,f338,f392,f373,f402,f357,f349,f365,f413,f397,f378,f340,f339,f384,f409,f354,f352,f383,f411,f337,f398,f362,f390,f359,f418,f417,f429,f435,f436,f434,f420,f421,f380]) ).

thf(f380,plain,
    ( hoasinduction_lem3b
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) ) ),
    inference(cnf_transformation,[],[f210]) ).

thf(f210,plain,
    ( hoasinduction_lem3b
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) ) ),
    inference(fool_elimination,[],[f209]) ).

thf(f209,plain,
    ( hoasinduction_lem3b
    = ( ! [X0: term] :
        ? [X1: subst > term > term] :
          ( ( sub @ X0 @ ( push @ one @ sh ) )
          = ( X1 @ sh @ one ) ) ) ),
    inference(rectify,[],[f105]) ).

thf(f105,axiom,
    ( hoasinduction_lem3b
    = ( ! [X1: term] :
        ? [X10: subst > term > term] :
          ( ( X10 @ sh @ one )
          = ( sub @ X1 @ ( push @ one @ sh ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasinduction_lem3b) ).

thf(f421,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id
                            @ ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                              @ id
                              @ Y1
                              @ id
                              @ Y2 )
                            @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f389,f405]) ).

thf(f405,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(cnf_transformation,[],[f189]) ).

thf(f189,plain,
    ( hoasap
    = ( ^ [Y0: subst,Y1: term,Y2: subst,Y3: term] : ( ap @ ( sub @ Y1 @ Y2 ) @ Y3 ) ) ),
    inference(fool_elimination,[],[f188]) ).

thf(f188,plain,
    ( hoasap
    = ( ^ [X0: subst,X1: term,X2: subst,X3: term] : ( ap @ ( sub @ X1 @ X2 ) @ X3 ) ) ),
    inference(rectify,[],[f55]) ).

thf(f55,axiom,
    ( hoasap
    = ( ^ [X2: subst,X0: term,X3: subst,X1: term] : ( ap @ ( sub @ X0 @ X3 ) @ X1 ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasap) ).

thf(f389,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( hoasap @ id @ Y1 @ id @ Y2 ) @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f195]) ).

thf(f195,plain,
    ( hoasinduction_lem2
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( hoasap @ id @ Y1 @ id @ Y2 ) @ id ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ id @ Y1 @ id )
                       => ( ( Y0 @ id @ Y2 @ id )
                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f194]) ).

thf(f194,plain,
    ( hoasinduction_lem2
    = ( ! [X0: subst > term > subst > $o] :
          ( ! [X1: subst,X2: subst,X3: subst,X4: term] :
              ( ( X0 @ X3 @ X4 @ ( comp @ X1 @ X2 ) )
             => ( X0 @ ( comp @ X3 @ X1 ) @ ( sub @ X4 @ X1 ) @ X2 ) )
         => ( ! [X5: subst,X6: subst,X7: term,X8: subst] :
                ( ( X0 @ ( comp @ X6 @ X5 ) @ ( sub @ X7 @ X5 ) @ X8 )
               => ( X0 @ X6 @ X7 @ ( comp @ X5 @ X8 ) ) )
           => ( ! [X9: term,X10: term] :
                  ( ( X0 @ id @ X10 @ id )
                 => ( ( X0 @ id @ X9 @ id )
                   => ( X0 @ id @ ( hoasap @ id @ X10 @ id @ X9 ) @ id ) ) )
             => ! [X11: term,X12: term] :
                  ( ( X0 @ id @ X12 @ id )
                 => ( ( X0 @ id @ X11 @ id )
                   => ( X0 @ id @ ( ap @ X12 @ X11 ) @ id ) ) ) ) ) ) ) ),
    inference(rectify,[],[f93]) ).

thf(f93,axiom,
    ( hoasinduction_lem2
    = ( ! [X5: subst > term > subst > $o] :
          ( ! [X4: subst,X3: subst,X2: subst,X0: term] :
              ( ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) )
             => ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 ) )
         => ( ! [X4: subst,X2: subst,X0: term,X3: subst] :
                ( ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 )
               => ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) ) )
           => ( ! [X1: term,X0: term] :
                  ( ( X5 @ id @ X0 @ id )
                 => ( ( X5 @ id @ X1 @ id )
                   => ( X5 @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) ) )
             => ! [X1: term,X0: term] :
                  ( ( X5 @ id @ X0 @ id )
                 => ( ( X5 @ id @ X1 @ id )
                   => ( X5 @ id @ ( ap @ X0 @ X1 ) @ id ) ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasinduction_lem2) ).

thf(f420,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                      @ id
                      @ Y1
                      @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f386,f374]) ).

thf(f374,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(cnf_transformation,[],[f333]) ).

thf(f333,plain,
    ( hoasvar
    = ( ^ [Y0: subst,Y1: term,Y2: subst] : ( var @ ( sub @ Y1 @ Y2 ) ) ) ),
    inference(fool_elimination,[],[f332]) ).

thf(f332,plain,
    ( ( ^ [X0: subst,X1: term,X2: subst] : ( var @ ( sub @ X1 @ X2 ) ) )
    = hoasvar ),
    inference(rectify,[],[f57]) ).

thf(f57,axiom,
    ( ( ^ [X2: subst,X0: term,X3: subst] : ( var @ ( sub @ X0 @ X3 ) ) )
    = hoasvar ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasvar) ).

thf(f386,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( hoasvar @ id @ Y1 @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f320]) ).

thf(f320,plain,
    ( hoasinduction_lem1
    = ( !! @ ( subst > term > subst > $o )
      @ ^ [Y0: subst > term > subst > $o] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( !! @ subst
                        @ ^ [Y4: subst] :
                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( hoasvar @ id @ Y1 @ id )
                   => ( Y0 @ id @ Y1 @ id ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f319]) ).

thf(f319,plain,
    ( hoasinduction_lem1
    = ( ! [X0: subst > term > subst > $o] :
          ( ! [X1: subst,X2: term,X3: subst,X4: subst] :
              ( ( X0 @ X1 @ X2 @ ( comp @ X3 @ X4 ) )
             => ( X0 @ ( comp @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) @ X4 ) )
         => ( ! [X5: subst,X6: subst,X7: subst,X8: term] :
                ( ( X0 @ ( comp @ X7 @ X5 ) @ ( sub @ X8 @ X5 ) @ X6 )
               => ( X0 @ X7 @ X8 @ ( comp @ X5 @ X6 ) ) )
           => ( ! [X9: term] :
                  ( ( hoasvar @ id @ X9 @ id )
                 => ( X0 @ id @ X9 @ id ) )
             => ! [X10: term] :
                  ( ( var @ X10 )
                 => ( X0 @ id @ X10 @ id ) ) ) ) ) ) ),
    inference(rectify,[],[f90]) ).

thf(f90,axiom,
    ( hoasinduction_lem1
    = ( ! [X5: subst > term > subst > $o] :
          ( ! [X2: subst,X0: term,X4: subst,X3: subst] :
              ( ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) )
             => ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 ) )
         => ( ! [X4: subst,X3: subst,X2: subst,X0: term] :
                ( ( X5 @ ( comp @ X2 @ X4 ) @ ( sub @ X0 @ X4 ) @ X3 )
               => ( X5 @ X2 @ X0 @ ( comp @ X4 @ X3 ) ) )
           => ( ! [X0: term] :
                  ( ( hoasvar @ id @ X0 @ id )
                 => ( X5 @ id @ X0 @ id ) )
             => ! [X0: term] :
                  ( ( var @ X0 )
                 => ( X5 @ id @ X0 @ id ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasinduction_lem1) ).

thf(f434,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( ^ [Y2: subst,Y3: term,Y4: subst] : ( var @ ( sub @ Y3 @ Y4 ) )
                @ id
                @ ( ^ [Y2: subst,Y3: term,Y4: subst,Y5: term] : ( ap @ ( sub @ Y3 @ Y4 ) @ Y5 )
                  @ id
                  @ Y0
                  @ id
                  @ Y1 )
                @ id ) ) ) ),
    inference(definition_unfolding,[],[f356,f374,f405]) ).

thf(f356,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y0 @ id @ Y1 ) @ id ) ) ) ),
    inference(cnf_transformation,[],[f160]) ).

thf(f160,plain,
    ( hoasapnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( hoasvar @ id @ ( hoasap @ id @ Y0 @ id @ Y1 ) @ id ) ) ) ),
    inference(fool_elimination,[],[f159]) ).

thf(f159,plain,
    ! [X0: term,X1: term] :
      ( ( ~ ( hoasvar @ id @ ( hoasap @ id @ X1 @ id @ X0 ) @ id ) )
      = hoasapnotvar ),
    inference(rectify,[],[f73]) ).

thf(f73,axiom,
    ! [X1: term,X0: term] :
      ( ( ~ ( hoasvar @ id @ ( hoasap @ id @ X0 @ id @ X1 ) @ id ) )
      = hoasapnotvar ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasapnotvar) ).

thf(f436,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( ^ [Y1: subst,Y2: term,Y3: subst] : ( var @ ( sub @ Y2 @ Y3 ) )
              @ id
              @ ( ^ [Y1: subst,Y2: subst > term > term] : ( lam @ ( Y2 @ sh @ one ) )
                @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(definition_unfolding,[],[f351,f374,f391]) ).

thf(f391,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(cnf_transformation,[],[f287]) ).

thf(f287,plain,
    ( hoaslam
    = ( ^ [Y0: subst,Y1: subst > term > term] : ( lam @ ( Y1 @ sh @ one ) ) ) ),
    inference(fool_elimination,[],[f286]) ).

thf(f286,plain,
    ( hoaslam
    = ( ^ [X0: subst,X1: subst > term > term] : ( lam @ ( X1 @ sh @ one ) ) ) ),
    inference(rectify,[],[f56]) ).

thf(f56,axiom,
    ( hoaslam
    = ( ^ [X2: subst,X10: subst > term > term] : ( lam @ ( X10 @ sh @ one ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoaslam) ).

thf(f351,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(cnf_transformation,[],[f139]) ).

thf(f139,plain,
    ( hoaslamnotvar
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [Y1: subst,Y2: term] : ( Y0 @ Y1 @ Y2 ) )
              @ id ) ) ) ),
    inference(fool_elimination,[],[f138]) ).

thf(f138,plain,
    ( hoaslamnotvar
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: term,X3: subst] :
              ( ( X0 @ ( comp @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) )
              = ( sub @ ( X0 @ X1 @ X2 ) @ X3 ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X4: subst,X5: term] : ( X0 @ X4 @ X5 ) )
              @ id ) ) ) ),
    inference(rectify,[],[f70]) ).

thf(f70,axiom,
    ( hoaslamnotvar
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X0: term,X3: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ~ ( hoasvar @ id
              @ ( hoaslam @ id
                @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) )
              @ id ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoaslamnotvar) ).

thf(f435,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( ^ [Y3: subst,Y4: term,Y5: subst,Y6: term] : ( ap @ ( sub @ Y4 @ Y5 ) @ Y6 )
                      @ id
                      @ Y2
                      @ id
                      @ Y1 )
                   != ( ^ [Y3: subst,Y4: subst > term > term] : ( lam @ ( Y4 @ sh @ one ) )
                      @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f394,f405,f391]) ).

thf(f394,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoasap @ id @ Y2 @ id @ Y1 )
                   != ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f227]) ).

thf(f227,plain,
    ( hoaslamnotap
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
         => ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( hoasap @ id @ Y2 @ id @ Y1 )
                   != ( hoaslam @ id
                      @ ^ [Y3: subst,Y4: term] : ( Y0 @ Y3 @ Y4 ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f226]) ).

thf(f226,plain,
    ( hoaslamnotap
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: subst,X3: term] :
              ( ( X0 @ ( comp @ X1 @ X2 ) @ ( sub @ X3 @ X2 ) )
              = ( sub @ ( X0 @ X1 @ X3 ) @ X2 ) )
         => ! [X4: term,X5: term] :
              ( ( hoasap @ id @ X4 @ id @ X5 )
             != ( hoaslam @ id
                @ ^ [X6: subst,X7: term] : ( X0 @ X6 @ X7 ) ) ) ) ) ),
    inference(rectify,[],[f67]) ).

thf(f67,axiom,
    ( hoaslamnotap
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X3: subst,X0: term] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X0: term,X1: term] :
              ( ( hoasap @ id @ X0 @ id @ X1 )
             != ( hoaslam @ id
                @ ^ [X2: subst,X6: term] : ( X10 @ X2 @ X6 ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoaslamnotap) ).

thf(f429,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
               => ( ( ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    = ( ^ [Y2: subst,Y3: subst > term > term] : ( lam @ ( Y3 @ sh @ one ) )
                      @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f350,f391,f391]) ).

thf(f350,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f118]) ).

thf(f118,plain,
    ( hoaslaminj
    = ( !! @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ subst
                    @ ^ [Y3: subst] :
                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
         => ( !! @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ term
                          @ ^ [Y4: term] :
                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
               => ( ( ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y1 @ Y2 @ Y3 ) )
                    = ( hoaslam @ id
                      @ ^ [Y2: subst,Y3: term] : ( Y0 @ Y2 @ Y3 ) ) )
                 => ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( Y0 @ Y2 @ Y3 )
                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f117]) ).

thf(f117,plain,
    ( hoaslaminj
    = ( ! [X0: subst > term > term] :
          ( ! [X1: subst,X2: term,X3: subst] :
              ( ( X0 @ ( comp @ X1 @ X3 ) @ ( sub @ X2 @ X3 ) )
              = ( sub @ ( X0 @ X1 @ X2 ) @ X3 ) )
         => ! [X4: subst > term > term] :
              ( ! [X5: term,X6: subst,X7: subst] :
                  ( ( X4 @ ( comp @ X7 @ X6 ) @ ( sub @ X5 @ X6 ) )
                  = ( sub @ ( X4 @ X7 @ X5 ) @ X6 ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X8: subst,X9: term] : ( X4 @ X8 @ X9 ) )
                  = ( hoaslam @ id
                    @ ^ [X10: subst,X11: term] : ( X0 @ X10 @ X11 ) ) )
               => ! [X12: term,X13: subst] :
                    ( ( X0 @ X13 @ X12 )
                    = ( X4 @ X13 @ X12 ) ) ) ) ) ) ),
    inference(rectify,[],[f64]) ).

thf(f64,axiom,
    ( hoaslaminj
    = ( ! [X10: subst > term > term] :
          ( ! [X2: subst,X0: term,X3: subst] :
              ( ( sub @ ( X10 @ X2 @ X0 ) @ X3 )
              = ( X10 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
         => ! [X11: subst > term > term] :
              ( ! [X0: term,X3: subst,X2: subst] :
                  ( ( sub @ ( X11 @ X2 @ X0 ) @ X3 )
                  = ( X11 @ ( comp @ X2 @ X3 ) @ ( sub @ X0 @ X3 ) ) )
             => ( ( ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X11 @ X2 @ X0 ) )
                  = ( hoaslam @ id
                    @ ^ [X2: subst,X0: term] : ( X10 @ X2 @ X0 ) ) )
               => ! [X0: term,X2: subst] :
                    ( ( X10 @ X2 @ X0 )
                    = ( X11 @ X2 @ X0 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoaslaminj) ).

thf(f417,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y2
                          @ id
                          @ Y3 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y0
                          @ id
                          @ Y1 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f381,f405,f405]) ).

thf(f381,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y2 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y1 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f312]) ).

thf(f312,plain,
    ( hoasapinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y2 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y1 ) )
                     => ( Y3 = Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f311]) ).

thf(f311,plain,
    ( hoasapinj2
    = ( ! [X0: term,X1: term,X2: term,X3: term] :
          ( ( ( hoasap @ id @ X1 @ id @ X0 )
            = ( hoasap @ id @ X3 @ id @ X2 ) )
         => ( X0 = X2 ) ) ) ),
    inference(rectify,[],[f61]) ).

thf(f61,axiom,
    ( hoasapinj2
    = ( ! [X7: term,X1: term,X6: term,X0: term] :
          ( ( ( hoasap @ id @ X0 @ id @ X6 )
            = ( hoasap @ id @ X1 @ id @ X7 ) )
         => ( X6 = X7 ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasapinj2) ).

thf(f418,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y2
                          @ id
                          @ Y3 )
                        = ( ^ [Y4: subst,Y5: term,Y6: subst,Y7: term] : ( ap @ ( sub @ Y5 @ Y6 ) @ Y7 )
                          @ id
                          @ Y0
                          @ id
                          @ Y1 ) )
                     => ( Y2 = Y0 ) ) ) ) ) ) ),
    inference(definition_unfolding,[],[f387,f405,f405]) ).

thf(f387,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y2 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y1 ) )
                     => ( Y2 = Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f322]) ).

thf(f322,plain,
    ( hoasapinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( hoasap @ id @ Y2 @ id @ Y3 )
                        = ( hoasap @ id @ Y0 @ id @ Y1 ) )
                     => ( Y2 = Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f321]) ).

thf(f321,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( hoasap @ id @ X1 @ id @ X0 )
          = ( hoasap @ id @ X3 @ id @ X2 ) )
       => ( X1 = X3 ) )
      = hoasapinj1 ),
    inference(rectify,[],[f58]) ).

thf(f58,axiom,
    ! [X7: term,X1: term,X6: term,X0: term] :
      ( ( ( ( hoasap @ id @ X0 @ id @ X6 )
          = ( hoasap @ id @ X1 @ id @ X7 ) )
       => ( X0 = X1 ) )
      = hoasapinj1 ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasapinj1) ).

thf(f359,plain,
    ( termmset
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f217]) ).

thf(f217,plain,
    ( termmset
    = ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( sub @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f216]) ).

thf(f216,plain,
    ( ! [X0: subst,X1: term,X2: subst] :
        ( ( sub @ X1 @ ( comp @ X2 @ X0 ) )
        = ( sub @ ( sub @ X1 @ X2 ) @ X0 ) )
    & ! [X3: term] :
        ( ( ( sub @ X3 @ id )
          = X3 )
        = termmset ) ),
    inference(rectify,[],[f52]) ).

thf(f52,axiom,
    ( ! [X3: subst,X0: term,X2: subst] :
        ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
        = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) )
    & ! [X0: term] :
        ( ( ( sub @ X0 @ id )
          = X0 )
        = termmset ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',termmset) ).

thf(f390,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                    = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f171]) ).

thf(f171,plain,
    ( substmonoid
    = ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                    = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
      & ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) ) ) ),
    inference(fool_elimination,[],[f170]) ).

thf(f170,plain,
    ( ! [X0: subst] :
        ( ( comp @ id @ X0 )
        = X0 )
    & ! [X1: subst] :
        ( ( comp @ X1 @ id )
        = X1 )
    & ! [X2: subst,X3: subst,X4: subst] :
        ( ( ( comp @ ( comp @ X2 @ X4 ) @ X3 )
          = ( comp @ X2 @ ( comp @ X4 @ X3 ) ) )
        = substmonoid ) ),
    inference(rectify,[],[f49]) ).

thf(f49,axiom,
    ( ! [X2: subst] :
        ( ( comp @ id @ X2 )
        = X2 )
    & ! [X2: subst] :
        ( ( comp @ X2 @ id )
        = X2 )
    & ! [X2: subst,X4: subst,X3: subst] :
        ( ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
          = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) )
        = substmonoid ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',substmonoid) ).

thf(f362,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f310]) ).

thf(f310,plain,
    ( induction2
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f309]) ).

thf(f309,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X3 )
               => ( X0 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X4: term] :
                ( ! [X5: term] :
                    ( ( X0 @ X5 )
                   => ( X0 @ ( sub @ X4 @ ( push @ X5 @ id ) ) ) )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X6: term] : ( X0 @ X6 ) ) ) )
      = induction2 ),
    inference(rectify,[],[f46]) ).

thf(f46,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X0: term,X1: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction2 ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',induction2) ).

thf(f398,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f158]) ).

thf(f158,plain,
    ( induction2lem
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( Y0 @ Y1 )
                   => ( ( Y0 @ Y2 )
                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                 => ( Y0 @ ( lam @ Y1 ) ) ) )
           => ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f157]) ).

thf(f157,plain,
    ( induction2lem
    = ( ! [X0: term > $o] :
          ( ! [X1: term,X2: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X1 )
               => ( X0 @ ( ap @ X2 @ X1 ) ) ) )
         => ( ! [X3: term] :
                ( ! [X4: term] :
                    ( ( X0 @ X4 )
                   => ( X0 @ ( sub @ X3 @ ( push @ X4 @ id ) ) ) )
               => ( X0 @ ( lam @ X3 ) ) )
           => ! [X5: term,X6: subst] :
                ( ! [X7: term] :
                    ( ( var @ X7 )
                   => ( X0 @ ( sub @ X7 @ X6 ) ) )
               => ( X0 @ ( sub @ X5 @ X6 ) ) ) ) ) ) ),
    inference(rectify,[],[f43]) ).

thf(f43,axiom,
    ( induction2lem
    = ( ! [X5: term > $o] :
          ( ! [X1: term,X0: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ! [X1: term] :
                    ( ( X5 @ X1 )
                   => ( X5 @ ( sub @ X0 @ ( push @ X1 @ id ) ) ) )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term,X2: subst] :
                ( ! [X1: term] :
                    ( ( var @ X1 )
                   => ( X5 @ ( sub @ X1 @ X2 ) ) )
               => ( X5 @ ( sub @ X0 @ X2 ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',induction2lem) ).

thf(f337,plain,
    ( pushprop
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ ( term > $o )
          @ ^ [Y1: term > $o] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                 => ( ( Y1 @ Y2 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f177]) ).

thf(f177,plain,
    ( pushprop
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ ( term > $o )
          @ ^ [Y1: term > $o] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( var @ Y3 )
                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                 => ( ( Y1 @ Y2 )
                   => ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f176]) ).

thf(f176,plain,
    ( pushprop
    = ( ! [X0: term,X1: term > $o,X2: subst] :
          ( ! [X3: term] :
              ( ( var @ X3 )
             => ( X1 @ ( sub @ X3 @ X2 ) ) )
         => ( ( X1 @ X0 )
           => ! [X4: term] :
                ( ( var @ X4 )
               => ( X1 @ ( sub @ X4 @ ( push @ X0 @ X2 ) ) ) ) ) ) ) ),
    inference(rectify,[],[f39]) ).

thf(f39,axiom,
    ( pushprop
    = ( ! [X0: term,X5: term > $o,X2: subst] :
          ( ! [X1: term] :
              ( ( var @ X1 )
             => ( X5 @ ( sub @ X1 @ X2 ) ) )
         => ( ( X5 @ X0 )
           => ! [X1: term] :
                ( ( var @ X1 )
               => ( X5 @ ( sub @ X1 @ ( push @ X0 @ X2 ) ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',pushprop) ).

thf(f411,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f199]) ).

thf(f199,plain,
    ( induction
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( !! @ term
            @ ^ [Y1: term] :
                ( ( var @ Y1 )
               => ( Y0 @ Y1 ) ) )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y2 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( Y0 @ Y1 )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] : ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f198]) ).

thf(f198,plain,
    ! [X0: term > $o] :
      ( ( ! [X1: term] :
            ( ( var @ X1 )
           => ( X0 @ X1 ) )
       => ( ! [X2: term,X3: term] :
              ( ( X0 @ X2 )
             => ( ( X0 @ X3 )
               => ( X0 @ ( ap @ X2 @ X3 ) ) ) )
         => ( ! [X4: term] :
                ( ( X0 @ X4 )
               => ( X0 @ ( lam @ X4 ) ) )
           => ! [X5: term] : ( X0 @ X5 ) ) ) )
      = induction ),
    inference(rectify,[],[f23]) ).

thf(f23,axiom,
    ! [X5: term > $o] :
      ( ( ! [X0: term] :
            ( ( var @ X0 )
           => ( X5 @ X0 ) )
       => ( ! [X0: term,X1: term] :
              ( ( X5 @ X0 )
             => ( ( X5 @ X1 )
               => ( X5 @ ( ap @ X0 @ X1 ) ) ) )
         => ( ! [X0: term] :
                ( ( X5 @ X0 )
               => ( X5 @ ( lam @ X0 ) ) )
           => ! [X0: term] : ( X5 @ X0 ) ) ) )
      = induction ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',induction) ).

thf(f383,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(cnf_transformation,[],[f235]) ).

thf(f235,plain,
    ( lamnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ~ ( var @ ( lam @ Y0 ) ) ) ),
    inference(fool_elimination,[],[f234]) ).

thf(f234,plain,
    ! [X0: term] :
      ( ( ~ ( var @ ( lam @ X0 ) ) )
      = lamnotvar ),
    inference(rectify,[],[f22]) ).

thf(f22,axiom,
    ! [X0: term] :
      ( ( ~ ( var @ ( lam @ X0 ) ) )
      = lamnotvar ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',lamnotvar) ).

thf(f352,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f155]) ).

thf(f155,plain,
    ( apnotvar
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f154]) ).

thf(f154,plain,
    ( apnotvar
    = ( ! [X0: term,X1: term] :
          ~ ( var @ ( ap @ X0 @ X1 ) ) ) ),
    inference(rectify,[],[f21]) ).

thf(f21,axiom,
    ( apnotvar
    = ( ! [X0: term,X1: term] :
          ~ ( var @ ( ap @ X0 @ X1 ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',apnotvar) ).

thf(f354,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y2 )
                 != ( ap @ Y0 @ Y1 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f137]) ).

thf(f137,plain,
    ( lamnotap
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( lam @ Y2 )
                 != ( ap @ Y0 @ Y1 ) ) ) ) ) ),
    inference(fool_elimination,[],[f136]) ).

thf(f136,plain,
    ( lamnotap
    = ( ! [X0: term,X1: term,X2: term] :
          ( ( lam @ X0 )
         != ( ap @ X2 @ X1 ) ) ) ),
    inference(rectify,[],[f20]) ).

thf(f20,axiom,
    ( lamnotap
    = ( ! [X0: term,X6: term,X1: term] :
          ( ( lam @ X0 )
         != ( ap @ X1 @ X6 ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',lamnotap) ).

thf(f409,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f335]) ).

thf(f335,plain,
    ( shinj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( sub @ Y1 @ sh )
                = ( sub @ Y0 @ sh ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f334]) ).

thf(f334,plain,
    ! [X0: term,X1: term] :
      ( ( ( ( sub @ X0 @ sh )
          = ( sub @ X1 @ sh ) )
       => ( X0 = X1 ) )
      = shinj ),
    inference(rectify,[],[f19]) ).

thf(f19,axiom,
    ! [X1: term,X0: term] :
      ( ( ( ( sub @ X0 @ sh )
          = ( sub @ X1 @ sh ) )
       => ( X0 = X1 ) )
      = shinj ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',shinj) ).

thf(f384,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(cnf_transformation,[],[f298]) ).

thf(f298,plain,
    ( laminj
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( ( lam @ Y1 )
                = ( lam @ Y0 ) )
             => ( Y1 = Y0 ) ) ) ) ),
    inference(fool_elimination,[],[f18]) ).

thf(f18,axiom,
    ! [X0: term,X1: term] :
      ( ( ( ( lam @ X0 )
          = ( lam @ X1 ) )
       => ( X0 = X1 ) )
      = laminj ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',laminj) ).

thf(f339,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y3 )
                        = ( ap @ Y0 @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f273]) ).

thf(f273,plain,
    ( apinj2
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y1 @ Y3 )
                        = ( ap @ Y0 @ Y2 ) )
                     => ( Y3 = Y2 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f272]) ).

thf(f272,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( ap @ X2 @ X0 )
          = ( ap @ X3 @ X1 ) )
       => ( X0 = X1 ) )
      = apinj2 ),
    inference(rectify,[],[f17]) ).

thf(f17,axiom,
    ! [X7: term,X6: term,X1: term,X0: term] :
      ( ( ( ( ap @ X0 @ X6 )
          = ( ap @ X1 @ X7 ) )
       => ( X6 = X7 ) )
      = apinj2 ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',apinj2) ).

thf(f340,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y3 @ Y1 )
                        = ( ap @ Y0 @ Y2 ) )
                     => ( Y3 = Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f173]) ).

thf(f173,plain,
    ( apinj1
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( !! @ term
                  @ ^ [Y3: term] :
                      ( ( ( ap @ Y3 @ Y1 )
                        = ( ap @ Y0 @ Y2 ) )
                     => ( Y3 = Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f172]) ).

thf(f172,plain,
    ! [X0: term,X1: term,X2: term,X3: term] :
      ( ( ( ( ap @ X0 @ X2 )
          = ( ap @ X3 @ X1 ) )
       => ( X0 = X3 ) )
      = apinj1 ),
    inference(rectify,[],[f16]) ).

thf(f16,axiom,
    ! [X0: term,X7: term,X6: term,X1: term] :
      ( ( ( ( ap @ X0 @ X6 )
          = ( ap @ X1 @ X7 ) )
       => ( X0 = X1 ) )
      = apinj1 ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',apinj1) ).

thf(f378,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f295]) ).

thf(f295,plain,
    ( ulamvarind
    = ( !! @ ( term > $o )
      @ ^ [Y0: term > $o] :
          ( ( Y0 @ one )
         => ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( ( Y0 @ Y1 )
                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f294]) ).

thf(f294,plain,
    ( ulamvarind
    = ( ! [X0: term > $o] :
          ( ( X0 @ one )
         => ( ! [X1: term] :
                ( ( var @ X1 )
               => ( ( X0 @ X1 )
                 => ( X0 @ ( sub @ X1 @ sh ) ) ) )
           => ! [X2: term] :
                ( ( var @ X2 )
               => ( X0 @ X2 ) ) ) ) ) ),
    inference(rectify,[],[f15]) ).

thf(f15,axiom,
    ( ulamvarind
    = ( ! [X5: term > $o] :
          ( ( X5 @ one )
         => ( ! [X0: term] :
                ( ( var @ X0 )
               => ( ( X5 @ X0 )
                 => ( X5 @ ( sub @ X0 @ sh ) ) ) )
           => ! [X0: term] :
                ( ( var @ X0 )
               => ( X5 @ X0 ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',ulamvarind) ).

thf(f397,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(cnf_transformation,[],[f193]) ).

thf(f193,plain,
    ( ulamvarsh
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( var @ Y0 )
         => ( var @ ( sub @ Y0 @ sh ) ) ) ) ),
    inference(fool_elimination,[],[f192]) ).

thf(f192,plain,
    ! [X0: term] :
      ( ( ( var @ X0 )
       => ( var @ ( sub @ X0 @ sh ) ) )
      = ulamvarsh ),
    inference(rectify,[],[f14]) ).

thf(f14,axiom,
    ! [X0: term] :
      ( ( ( var @ X0 )
       => ( var @ ( sub @ X0 @ sh ) ) )
      = ulamvarsh ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',ulamvarsh) ).

thf(f413,plain,
    ( ulamvar1
    = ( var @ one ) ),
    inference(cnf_transformation,[],[f156]) ).

thf(f156,plain,
    ( ulamvar1
    = ( var @ one ) ),
    inference(fool_elimination,[],[f13]) ).

thf(f13,axiom,
    ( ulamvar1
    = ( var @ one ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',ulamvar1) ).

thf(f365,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f255]) ).

thf(f255,plain,
    ( axscons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f254]) ).

thf(f254,plain,
    ( axscons
    = ( ! [X0: subst] :
          ( ( push @ ( sub @ one @ X0 ) @ ( comp @ sh @ X0 ) )
          = X0 ) ) ),
    inference(rectify,[],[f12]) ).

thf(f12,axiom,
    ( axscons
    = ( ! [X2: subst] :
          ( ( push @ ( sub @ one @ X2 ) @ ( comp @ sh @ X2 ) )
          = X2 ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axscons) ).

thf(f349,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(cnf_transformation,[],[f206]) ).

thf(f206,plain,
    ( axvarshift
    = ( id
      = ( push @ one @ sh ) ) ),
    inference(fool_elimination,[],[f11]) ).

thf(f11,axiom,
    ( ( id
      = ( push @ one @ sh ) )
    = axvarshift ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axvarshift) ).

thf(f357,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f153]) ).

thf(f153,plain,
    ( axidr
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f152]) ).

thf(f152,plain,
    ! [X0: subst] :
      ( ( ( comp @ X0 @ id )
        = X0 )
      = axidr ),
    inference(rectify,[],[f10]) ).

thf(f10,axiom,
    ! [X2: subst] :
      ( ( ( comp @ X2 @ id )
        = X2 )
      = axidr ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axidr) ).

thf(f402,plain,
    ( axmap
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                  = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f135]) ).

thf(f135,plain,
    ( axmap
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                  = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f134]) ).

thf(f134,plain,
    ! [X0: term,X1: subst,X2: subst] :
      ( ( ( comp @ ( push @ X0 @ X2 ) @ X1 )
        = ( push @ ( sub @ X0 @ X1 ) @ ( comp @ X2 @ X1 ) ) )
      = axmap ),
    inference(rectify,[],[f9]) ).

thf(f9,axiom,
    ! [X0: term,X3: subst,X2: subst] :
      ( ( ( comp @ ( push @ X0 @ X2 ) @ X3 )
        = ( push @ ( sub @ X0 @ X3 ) @ ( comp @ X2 @ X3 ) ) )
      = axmap ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axmap) ).

thf(f373,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                  = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f257]) ).

thf(f257,plain,
    ( axassoc
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                  = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f256]) ).

thf(f256,plain,
    ( axassoc
    = ( ! [X0: subst,X1: subst,X2: subst] :
          ( ( comp @ ( comp @ X1 @ X0 ) @ X2 )
          = ( comp @ X1 @ ( comp @ X0 @ X2 ) ) ) ) ),
    inference(rectify,[],[f8]) ).

thf(f8,axiom,
    ( axassoc
    = ( ! [X3: subst,X2: subst,X4: subst] :
          ( ( comp @ ( comp @ X2 @ X3 ) @ X4 )
          = ( comp @ X2 @ ( comp @ X3 @ X4 ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axassoc) ).

thf(f392,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(cnf_transformation,[],[f302]) ).

thf(f302,plain,
    ( axshiftcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
              = Y0 ) ) ) ),
    inference(fool_elimination,[],[f301]) ).

thf(f301,plain,
    ( axshiftcons
    = ( ! [X0: term,X1: subst] :
          ( ( comp @ sh @ ( push @ X0 @ X1 ) )
          = X1 ) ) ),
    inference(rectify,[],[f7]) ).

thf(f7,axiom,
    ( axshiftcons
    = ( ! [X0: term,X2: subst] :
          ( ( comp @ sh @ ( push @ X0 @ X2 ) )
          = X2 ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axshiftcons) ).

thf(f338,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f308]) ).

thf(f308,plain,
    ( axidl
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( ( comp @ id @ Y0 )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f307]) ).

thf(f307,plain,
    ! [X0: subst] :
      ( ( ( comp @ id @ X0 )
        = X0 )
      = axidl ),
    inference(rectify,[],[f6]) ).

thf(f6,axiom,
    ! [X2: subst] :
      ( ( ( comp @ id @ X2 )
        = X2 )
      = axidl ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axidl) ).

thf(f410,plain,
    ( axclos
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                  = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f281]) ).

thf(f281,plain,
    ( axclos
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ subst
              @ ^ [Y2: subst] :
                  ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                  = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) ) ),
    inference(fool_elimination,[],[f280]) ).

thf(f280,plain,
    ( axclos
    = ( ! [X0: subst,X1: subst,X2: term] :
          ( ( sub @ X2 @ ( comp @ X1 @ X0 ) )
          = ( sub @ ( sub @ X2 @ X1 ) @ X0 ) ) ) ),
    inference(rectify,[],[f5]) ).

thf(f5,axiom,
    ( axclos
    = ( ! [X3: subst,X2: subst,X0: term] :
          ( ( sub @ ( sub @ X0 @ X2 ) @ X3 )
          = ( sub @ X0 @ ( comp @ X2 @ X3 ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axclos) ).

thf(f355,plain,
    ( axabs
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ ( lam @ Y1 ) @ Y0 )
              = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f237]) ).

thf(f237,plain,
    ( axabs
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ ( lam @ Y1 ) @ Y0 )
              = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f236]) ).

thf(f236,plain,
    ( axabs
    = ( ! [X0: term,X1: subst] :
          ( ( sub @ ( lam @ X0 ) @ X1 )
          = ( lam @ ( sub @ X0 @ ( push @ one @ ( comp @ X1 @ sh ) ) ) ) ) ) ),
    inference(rectify,[],[f4]) ).

thf(f4,axiom,
    ( axabs
    = ( ! [X0: term,X2: subst] :
          ( ( sub @ ( lam @ X0 ) @ X2 )
          = ( lam @ ( sub @ X0 @ ( push @ one @ ( comp @ X2 @ sh ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axabs) ).

thf(f372,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(cnf_transformation,[],[f133]) ).

thf(f133,plain,
    ( axvarid
    = ( !! @ term
      @ ^ [Y0: term] :
          ( ( sub @ Y0 @ id )
          = Y0 ) ) ),
    inference(fool_elimination,[],[f3]) ).

thf(f3,axiom,
    ( axvarid
    = ( ! [X0: term] :
          ( ( sub @ X0 @ id )
          = X0 ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axvarid) ).

thf(f348,plain,
    ( axvarcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
              = Y1 ) ) ) ),
    inference(cnf_transformation,[],[f149]) ).

thf(f149,plain,
    ( axvarcons
    = ( !! @ subst
      @ ^ [Y0: subst] :
          ( !! @ term
          @ ^ [Y1: term] :
              ( ( sub @ one @ ( push @ Y1 @ Y0 ) )
              = Y1 ) ) ) ),
    inference(fool_elimination,[],[f148]) ).

thf(f148,plain,
    ! [X0: term,X1: subst] :
      ( ( ( sub @ one @ ( push @ X0 @ X1 ) )
        = X0 )
      = axvarcons ),
    inference(rectify,[],[f2]) ).

thf(f2,axiom,
    ! [X0: term,X2: subst] :
      ( ( ( sub @ one @ ( push @ X0 @ X2 ) )
        = X0 )
      = axvarcons ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axvarcons) ).

thf(f341,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                  = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) ) ),
    inference(cnf_transformation,[],[f277]) ).

thf(f277,plain,
    ( axapp
    = ( !! @ term
      @ ^ [Y0: term] :
          ( !! @ subst
          @ ^ [Y1: subst] :
              ( !! @ term
              @ ^ [Y2: term] :
                  ( ( ap @ ( sub @ Y0 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                  = ( sub @ ( ap @ Y0 @ Y2 ) @ Y1 ) ) ) ) ) ),
    inference(fool_elimination,[],[f276]) ).

thf(f276,plain,
    ( axapp
    = ( ! [X0: term,X1: subst,X2: term] :
          ( ( ap @ ( sub @ X2 @ X1 ) @ ( sub @ X0 @ X1 ) )
          = ( sub @ ( ap @ X2 @ X0 ) @ X1 ) ) ) ),
    inference(rectify,[],[f1]) ).

thf(f1,axiom,
    ( axapp
    = ( ! [X1: term,X2: subst,X0: term] :
          ( ( sub @ ( ap @ X0 @ X1 ) @ X2 )
          = ( ap @ ( sub @ X0 @ X2 ) @ ( sub @ X1 @ X2 ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',axapp) ).

thf(f358,plain,
    ( hoasinduction_lem3b_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(cnf_transformation,[],[f225]) ).

thf(f225,plain,
    ( hoasinduction_lem3b_gthm
    = ( axapp
     => ( axvarcons
       => ( axvarid
         => ( axabs
           => ( axclos
             => ( axidl
               => ( axshiftcons
                 => ( axassoc
                   => ( axmap
                     => ( axidr
                       => ( axvarshift
                         => ( axscons
                           => ( ulamvar1
                             => ( ulamvarsh
                               => ( ulamvarind
                                 => ( apinj1
                                   => ( apinj2
                                     => ( laminj
                                       => ( shinj
                                         => ( lamnotap
                                           => ( apnotvar
                                             => ( lamnotvar
                                               => ( induction
                                                 => ( pushprop
                                                   => ( induction2lem
                                                     => ( induction2
                                                       => ( substmonoid
                                                         => ( termmset
                                                           => ( hoasapinj1
                                                             => ( hoasapinj2
                                                               => ( hoaslaminj
                                                                 => ( hoaslamnotap
                                                                   => ( hoaslamnotvar
                                                                     => ( hoasapnotvar
                                                                       => ( hoasinduction_lem1
                                                                         => ( hoasinduction_lem2
                                                                           => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(fool_elimination,[],[f224]) ).

thf(f224,plain,
    ( ( hoasinduction_lem3b_gthm = axapp )
   => ( axvarcons
     => ( axvarid
       => ( axabs
         => ( axclos
           => ( axidl
             => ( axshiftcons
               => ( axassoc
                 => ( axmap
                   => ( axidr
                     => ( axvarshift
                       => ( axscons
                         => ( ulamvar1
                           => ( ulamvarsh
                             => ( ulamvarind
                               => ( apinj1
                                 => ( apinj2
                                   => ( laminj
                                     => ( shinj
                                       => ( lamnotap
                                         => ( apnotvar
                                           => ( lamnotvar
                                             => ( induction
                                               => ( pushprop
                                                 => ( induction2lem
                                                   => ( induction2
                                                     => ( substmonoid
                                                       => ( termmset
                                                         => ( hoasapinj1
                                                           => ( hoasapinj2
                                                             => ( hoaslaminj
                                                               => ( hoaslamnotap
                                                                 => ( hoaslamnotvar
                                                                   => ( hoasapnotvar
                                                                     => ( hoasinduction_lem1
                                                                       => ( hoasinduction_lem2
                                                                         => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    inference(rectify,[],[f106]) ).

thf(f106,axiom,
    ( ( hoasinduction_lem3b_gthm = axapp )
   => ( axvarcons
     => ( axvarid
       => ( axabs
         => ( axclos
           => ( axidl
             => ( axshiftcons
               => ( axassoc
                 => ( axmap
                   => ( axidr
                     => ( axvarshift
                       => ( axscons
                         => ( ulamvar1
                           => ( ulamvarsh
                             => ( ulamvarind
                               => ( apinj1
                                 => ( apinj2
                                   => ( laminj
                                     => ( shinj
                                       => ( lamnotap
                                         => ( apnotvar
                                           => ( lamnotvar
                                             => ( induction
                                               => ( pushprop
                                                 => ( induction2lem
                                                   => ( induction2
                                                     => ( substmonoid
                                                       => ( termmset
                                                         => ( hoasapinj1
                                                           => ( hoasapinj2
                                                             => ( hoaslaminj
                                                               => ( hoaslamnotap
                                                                 => ( hoaslamnotvar
                                                                   => ( hoasapnotvar
                                                                     => ( hoasinduction_lem1
                                                                       => ( hoasinduction_lem2
                                                                         => hoasinduction_lem3b ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ),
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',hoasinduction_lem3b_gthm) ).

thf(f366,plain,
    ( $true = ~ hoasinduction_lem3b_gthm ),
    inference(cnf_transformation,[],[f306]) ).

thf(f306,plain,
    ( $true = ~ hoasinduction_lem3b_gthm ),
    inference(fool_elimination,[],[f305]) ).

thf(f305,plain,
    ~ hoasinduction_lem3b_gthm,
    inference(rectify,[],[f115]) ).

thf(f115,negated_conjecture,
    ~ hoasinduction_lem3b_gthm,
    inference(negated_conjecture,[],[f114]) ).

thf(f114,conjecture,
    hoasinduction_lem3b_gthm,
    file('/export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736',thm) ).

thf(f1198,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != ( sub @ sK32 @ id ) ),
    inference(forward_demodulation,[],[f941,f1071]) ).

thf(f1071,plain,
    ( id
    = ( push @ one @ sh ) ),
    inference(equality_proxy_clausification,[],[f507]) ).

thf(f507,plain,
    ( ( id
      = ( push @ one @ sh ) )
    = $true ),
    inference(binary_proxy_clausification,[],[f501]) ).

thf(f501,plain,
    ( ( ( id
        = ( push @ one @ sh ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
              = Y0 ) )
       => ( ( var @ one )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( var @ Y0 )
                 => ( var @ ( sub @ Y0 @ sh ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( Y0 @ one )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y3 @ Y1 )
                                    = ( ap @ Y0 @ Y2 ) )
                                 => ( Y3 = Y0 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y1 @ Y3 )
                                      = ( ap @ Y0 @ Y2 ) )
                                   => ( Y3 = Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( lam @ Y1 )
                                = ( lam @ Y0 ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( sub @ Y1 @ sh )
                                  = ( sub @ Y0 @ sh ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( lam @ Y2 )
                                     != ( ap @ Y0 @ Y1 ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ~ ( var @ ( lam @ Y0 ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ ( term > $o )
                                      @ ^ [Y1: term > $o] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                             => ( ( Y1 @ Y2 )
                                               => ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                      = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ Y0 @ id )
                                              = Y0 ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( ( comp @ id @ Y0 )
                                              = Y0 ) ) )
                                     => ( ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( ( sub @ Y0 @ id )
                                                = Y0 ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                           => ( Y2 = Y0 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                             => ( Y3 = Y1 ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                   => ( !! @ ( subst > term > term )
                                                      @ ^ [Y1: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y4: term] :
                                                                        ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                        = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                         => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                              = ( lam @ ( Y0 @ sh @ one ) ) )
                                                           => ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( Y0 @ Y2 @ Y3 )
                                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                               != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                             => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                               => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( ( var @ Y1 )
                                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                             => ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                 => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( Y0 @ id @ Y1 @ id )
                                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                                             => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( ?? @ ( subst > term > term )
                                                              @ ^ [Y1: subst > term > term] :
                                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f499]) ).

thf(f499,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ Y0 @ id )
            = Y0 ) )
     => ( ( id
          = ( push @ one @ sh ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                = Y0 ) )
         => ( ( var @ one )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( var @ Y0 )
                   => ( var @ ( sub @ Y0 @ sh ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( Y0 @ one )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ Y3 @ Y1 )
                                      = ( ap @ Y0 @ Y2 ) )
                                   => ( Y3 = Y0 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y1 @ Y3 )
                                        = ( ap @ Y0 @ Y2 ) )
                                     => ( Y3 = Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( ( lam @ Y1 )
                                  = ( lam @ Y0 ) )
                               => ( Y1 = Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( sub @ Y1 @ sh )
                                    = ( sub @ Y0 @ sh ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( lam @ Y2 )
                                       != ( ap @ Y0 @ Y1 ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ~ ( var @ ( lam @ Y0 ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ ( term > $o )
                                        @ ^ [Y1: term > $o] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                               => ( ( Y1 @ Y2 )
                                                 => ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                        = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ Y0 @ id )
                                                = Y0 ) )
                                          & ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( ( comp @ id @ Y0 )
                                                = Y0 ) ) )
                                       => ( ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( ( sub @ Y0 @ id )
                                                  = Y0 ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                             => ( Y2 = Y0 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                               => ( Y3 = Y1 ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                     => ( !! @ ( subst > term > term )
                                                        @ ^ [Y1: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y4: term] :
                                                                          ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                          = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                           => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                = ( lam @ ( Y0 @ sh @ one ) ) )
                                                             => ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( Y0 @ Y2 @ Y3 )
                                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                 != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                     => ( ( !! @ ( subst > term > subst > $o )
                                                          @ ^ [Y0: subst > term > subst > $o] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                               => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                 => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( ( var @ Y1 )
                                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                               => ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                   => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( Y0 @ id @ Y1 @ id )
                                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                                               => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( ?? @ ( subst > term > term )
                                                                @ ^ [Y1: subst > term > term] :
                                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f490]) ).

thf(f490,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                    = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
       => ( ( id
            = ( push @ one @ sh ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                  = Y0 ) )
           => ( ( var @ one )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( var @ Y0 )
                     => ( var @ ( sub @ Y0 @ sh ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( Y0 @ one )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ Y3 @ Y1 )
                                        = ( ap @ Y0 @ Y2 ) )
                                     => ( Y3 = Y0 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y1 @ Y3 )
                                          = ( ap @ Y0 @ Y2 ) )
                                       => ( Y3 = Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( ( lam @ Y1 )
                                    = ( lam @ Y0 ) )
                                 => ( Y1 = Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( sub @ Y1 @ sh )
                                      = ( sub @ Y0 @ sh ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( lam @ Y2 )
                                         != ( ap @ Y0 @ Y1 ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ~ ( var @ ( lam @ Y0 ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ ( term > $o )
                                          @ ^ [Y1: term > $o] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                 => ( ( Y1 @ Y2 )
                                                   => ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                          = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ Y0 @ id )
                                                  = Y0 ) )
                                            & ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( ( comp @ id @ Y0 )
                                                  = Y0 ) ) )
                                         => ( ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( ( sub @ Y0 @ id )
                                                    = Y0 ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                               => ( Y2 = Y0 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                 => ( Y3 = Y1 ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > term )
                                                    @ ^ [Y0: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                       => ( !! @ ( subst > term > term )
                                                          @ ^ [Y1: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y4: term] :
                                                                            ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                            = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                             => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                  = ( lam @ ( Y0 @ sh @ one ) ) )
                                                               => ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( Y0 @ Y2 @ Y3 )
                                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                   != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                       => ( ( !! @ ( subst > term > subst > $o )
                                                            @ ^ [Y0: subst > term > subst > $o] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y4: subst] :
                                                                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( ( var @ Y1 )
                                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                 => ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( ( Y0 @ id @ Y1 @ id )
                                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( ?? @ ( subst > term > term )
                                                                  @ ^ [Y1: subst > term > term] :
                                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f488]) ).

thf(f488,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                    = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                      = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
         => ( ( id
              = ( push @ one @ sh ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                    = Y0 ) )
             => ( ( var @ one )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( var @ Y0 )
                       => ( var @ ( sub @ Y0 @ sh ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( Y0 @ one )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ Y3 @ Y1 )
                                          = ( ap @ Y0 @ Y2 ) )
                                       => ( Y3 = Y0 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y1 @ Y3 )
                                            = ( ap @ Y0 @ Y2 ) )
                                         => ( Y3 = Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( ( lam @ Y1 )
                                      = ( lam @ Y0 ) )
                                   => ( Y1 = Y0 ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( sub @ Y1 @ sh )
                                        = ( sub @ Y0 @ sh ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( lam @ Y2 )
                                           != ( ap @ Y0 @ Y1 ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ~ ( var @ ( lam @ Y0 ) ) )
                                 => ( ( !! @ ( term > $o )
                                      @ ^ [Y0: term > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ Y1 ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                                             => ( !! @ term @ Y0 ) ) ) ) )
                                   => ( ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ ( term > $o )
                                            @ ^ [Y1: term > $o] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( var @ Y3 )
                                                         => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                   => ( ( Y1 @ Y2 )
                                                     => ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( ( Y0 @ Y2 )
                                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                            = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ Y0 @ id )
                                                    = Y0 ) )
                                              & ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( ( comp @ id @ Y0 )
                                                    = Y0 ) ) )
                                           => ( ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( ( sub @ Y0 @ id )
                                                      = Y0 ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                              = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                 => ( Y2 = Y0 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                   => ( Y3 = Y1 ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > term )
                                                      @ ^ [Y0: subst > term > term] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                         => ( !! @ ( subst > term > term )
                                                            @ ^ [Y1: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y4: term] :
                                                                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                               => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                    = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                 => ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( Y0 @ Y2 @ Y3 )
                                                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                     != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                         => ( ( !! @ ( subst > term > subst > $o )
                                                              @ ^ [Y0: subst > term > subst > $o] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y4: subst] :
                                                                                    ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                   => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                 => ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                     => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( var @ ( sub @ Y1 @ id ) )
                                                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( ( var @ Y1 )
                                                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                   => ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                       => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                                   => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( ?? @ ( subst > term > term )
                                                                    @ ^ [Y1: subst > term > term] :
                                                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f486]) ).

thf(f486,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                = Y0 ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                      = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                        = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
           => ( ( id
                = ( push @ one @ sh ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                      = Y0 ) )
               => ( ( var @ one )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( var @ Y0 )
                         => ( var @ ( sub @ Y0 @ sh ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( Y0 @ one )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ Y3 @ Y1 )
                                            = ( ap @ Y0 @ Y2 ) )
                                         => ( Y3 = Y0 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y1 @ Y3 )
                                              = ( ap @ Y0 @ Y2 ) )
                                           => ( Y3 = Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( ( lam @ Y1 )
                                        = ( lam @ Y0 ) )
                                     => ( Y1 = Y0 ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( sub @ Y1 @ sh )
                                          = ( sub @ Y0 @ sh ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( lam @ Y2 )
                                             != ( ap @ Y0 @ Y1 ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ~ ( var @ ( lam @ Y0 ) ) )
                                   => ( ( !! @ ( term > $o )
                                        @ ^ [Y0: term > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ Y1 ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                                               => ( !! @ term @ Y0 ) ) ) ) )
                                     => ( ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ ( term > $o )
                                              @ ^ [Y1: term > $o] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( var @ Y3 )
                                                           => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                     => ( ( Y1 @ Y2 )
                                                       => ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( ( Y0 @ Y2 )
                                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                              = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ Y0 @ id )
                                                      = Y0 ) )
                                                & ( !! @ subst
                                                  @ ^ [Y0: subst] :
                                                      ( ( comp @ id @ Y0 )
                                                      = Y0 ) ) )
                                             => ( ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( ( sub @ Y0 @ id )
                                                        = Y0 ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                   => ( Y2 = Y0 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > term )
                                                        @ ^ [Y0: subst > term > term] :
                                                            ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                           => ( !! @ ( subst > term > term )
                                                              @ ^ [Y1: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y4: term] :
                                                                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                 => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                      = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                   => ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y3: term] :
                                                                              ( ( Y0 @ Y2 @ Y3 )
                                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y2: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                       != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y0: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                           => ( ( !! @ ( subst > term > subst > $o )
                                                                @ ^ [Y0: subst > term > subst > $o] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y4: subst] :
                                                                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                   => ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                                       => ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( ( var @ Y1 )
                                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                      ( ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                     => ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y2: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                       => ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( ?? @ ( subst > term > term )
                                                                      @ ^ [Y1: subst > term > term] :
                                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f477]) ).

thf(f477,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( comp @ id @ Y0 )
            = Y0 ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                  = Y0 ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                        = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                          = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
             => ( ( id
                  = ( push @ one @ sh ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                        = Y0 ) )
                 => ( ( var @ one )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( var @ Y0 )
                           => ( var @ ( sub @ Y0 @ sh ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( Y0 @ one )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ Y3 @ Y1 )
                                              = ( ap @ Y0 @ Y2 ) )
                                           => ( Y3 = Y0 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y1 @ Y3 )
                                                = ( ap @ Y0 @ Y2 ) )
                                             => ( Y3 = Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( ( lam @ Y1 )
                                          = ( lam @ Y0 ) )
                                       => ( Y1 = Y0 ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( sub @ Y1 @ sh )
                                            = ( sub @ Y0 @ sh ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( lam @ Y2 )
                                               != ( ap @ Y0 @ Y1 ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ~ ( var @ ( lam @ Y0 ) ) )
                                     => ( ( !! @ ( term > $o )
                                          @ ^ [Y0: term > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ Y1 ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ Y2 )
                                                         => ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( Y0 @ Y1 )
                                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                 => ( !! @ term @ Y0 ) ) ) ) )
                                       => ( ( !! @ subst
                                            @ ^ [Y0: subst] :
                                                ( !! @ ( term > $o )
                                                @ ^ [Y1: term > $o] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( var @ Y3 )
                                                             => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                       => ( ( Y1 @ Y2 )
                                                         => ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( ( Y0 @ Y2 )
                                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ Y1 ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y2 )
                                                               => ( ( Y0 @ Y1 )
                                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ term @ Y0 ) ) ) ) )
                                             => ( ( ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ Y0 @ id )
                                                        = Y0 ) )
                                                  & ( !! @ subst
                                                    @ ^ [Y0: subst] :
                                                        ( ( comp @ id @ Y0 )
                                                        = Y0 ) ) )
                                               => ( ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( ( sub @ Y0 @ id )
                                                          = Y0 ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                     => ( Y2 = Y0 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                       => ( Y3 = Y1 ) ) ) ) ) )
                                                     => ( ( !! @ ( subst > term > term )
                                                          @ ^ [Y0: subst > term > term] :
                                                              ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                             => ( !! @ ( subst > term > term )
                                                                @ ^ [Y1: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y4: term] :
                                                                                  ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                  = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                   => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                        = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                     => ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y3: term] :
                                                                                ( ( Y0 @ Y2 @ Y3 )
                                                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y2: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                         != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y0: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                             => ( ( !! @ ( subst > term > subst > $o )
                                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y4: subst] :
                                                                                        ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                       => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                     => ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                         => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                       => ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( ( var @ ( sub @ Y1 @ id ) )
                                                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                                                         => ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( ( var @ Y1 )
                                                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                               => ( ( !! @ ( subst > term > subst > $o )
                                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                                        ( ( !! @ term
                                                                          @ ^ [Y1: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y3: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                       => ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y2: term] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                           => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                                       => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( ?? @ ( subst > term > term )
                                                                        @ ^ [Y1: subst > term > term] :
                                                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f475]) ).

thf(f475,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ subst
            @ ^ [Y1: subst] :
                ( !! @ subst
                @ ^ [Y2: subst] :
                    ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                    = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                    = Y0 ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                          = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                            = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
               => ( ( id
                    = ( push @ one @ sh ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                          = Y0 ) )
                   => ( ( var @ one )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( var @ Y0 )
                             => ( var @ ( sub @ Y0 @ sh ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( Y0 @ one )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ Y3 @ Y1 )
                                                = ( ap @ Y0 @ Y2 ) )
                                             => ( Y3 = Y0 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y1 @ Y3 )
                                                  = ( ap @ Y0 @ Y2 ) )
                                               => ( Y3 = Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( ( lam @ Y1 )
                                            = ( lam @ Y0 ) )
                                         => ( Y1 = Y0 ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( sub @ Y1 @ sh )
                                              = ( sub @ Y0 @ sh ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( lam @ Y2 )
                                                 != ( ap @ Y0 @ Y1 ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ~ ( var @ ( lam @ Y0 ) ) )
                                       => ( ( !! @ ( term > $o )
                                            @ ^ [Y0: term > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ Y1 ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ Y2 )
                                                           => ( ( Y0 @ Y1 )
                                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( Y0 @ Y1 )
                                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                   => ( !! @ term @ Y0 ) ) ) ) )
                                         => ( ( !! @ subst
                                              @ ^ [Y0: subst] :
                                                  ( !! @ ( term > $o )
                                                  @ ^ [Y1: term > $o] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( var @ Y3 )
                                                               => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                         => ( ( Y1 @ Y2 )
                                                           => ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( term > $o )
                                                @ ^ [Y0: term > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y1 )
                                                             => ( ( Y0 @ Y2 )
                                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( ( var @ Y3 )
                                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ Y1 ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ Y2 )
                                                                 => ( ( Y0 @ Y1 )
                                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ Y2 )
                                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                         => ( !! @ term @ Y0 ) ) ) ) )
                                               => ( ( ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                  = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ Y0 @ id )
                                                          = Y0 ) )
                                                    & ( !! @ subst
                                                      @ ^ [Y0: subst] :
                                                          ( ( comp @ id @ Y0 )
                                                          = Y0 ) ) )
                                                 => ( ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( ( sub @ Y0 @ id )
                                                            = Y0 ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                       => ( Y2 = Y0 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                         => ( Y3 = Y1 ) ) ) ) ) )
                                                       => ( ( !! @ ( subst > term > term )
                                                            @ ^ [Y0: subst > term > term] :
                                                                ( ( !! @ subst
                                                                  @ ^ [Y1: subst] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y3: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                               => ( !! @ ( subst > term > term )
                                                                  @ ^ [Y1: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y4: term] :
                                                                                    ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                    = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                     => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                          = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                       => ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ term
                                                                              @ ^ [Y3: term] :
                                                                                  ( ( Y0 @ Y2 @ Y3 )
                                                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y2: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                 => ( !! @ term
                                                                    @ ^ [Y1: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                           != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ subst
                                                                      @ ^ [Y1: subst] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y0: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                               => ( ( !! @ ( subst > term > subst > $o )
                                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y1: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y2: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y3: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y4: subst] :
                                                                                          ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                         => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                       => ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                           => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                                                           => ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( ( var @ Y1 )
                                                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                                          ( ( !! @ term
                                                                            @ ^ [Y1: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ subst
                                                                                    @ ^ [Y3: subst] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                         => ( ( !! @ subst
                                                                              @ ^ [Y1: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y2: term] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                           => ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y0: term] :
                                                                          ( ?? @ ( subst > term > term )
                                                                          @ ^ [Y1: subst > term > term] :
                                                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f470]) ).

thf(f470,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( sub @ ( lam @ Y1 ) @ Y0 )
                = ( lam @ ( sub @ Y1 @ ( push @ one @ ( comp @ Y0 @ sh ) ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( sub @ Y0 @ ( comp @ Y1 @ Y2 ) )
                      = ( sub @ ( sub @ Y0 @ Y1 ) @ Y2 ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( comp @ sh @ ( push @ Y1 @ Y0 ) )
                      = Y0 ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( comp @ Y1 @ Y2 ) @ Y0 )
                            = ( comp @ Y1 @ ( comp @ Y2 @ Y0 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( comp @ ( push @ Y2 @ Y0 ) @ Y1 )
                              = ( push @ ( sub @ Y2 @ Y1 ) @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                 => ( ( id
                      = ( push @ one @ sh ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
                            = Y0 ) )
                     => ( ( var @ one )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( var @ Y0 )
                               => ( var @ ( sub @ Y0 @ sh ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( Y0 @ one )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ Y3 @ Y1 )
                                                  = ( ap @ Y0 @ Y2 ) )
                                               => ( Y3 = Y0 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ Y1 @ Y3 )
                                                    = ( ap @ Y0 @ Y2 ) )
                                                 => ( Y3 = Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( ( lam @ Y1 )
                                              = ( lam @ Y0 ) )
                                           => ( Y1 = Y0 ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( ( sub @ Y1 @ sh )
                                                = ( sub @ Y0 @ sh ) )
                                             => ( Y1 = Y0 ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( lam @ Y2 )
                                                   != ( ap @ Y0 @ Y1 ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ~ ( var @ ( lam @ Y0 ) ) )
                                         => ( ( !! @ ( term > $o )
                                              @ ^ [Y0: term > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ Y1 ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ Y2 )
                                                             => ( ( Y0 @ Y1 )
                                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( Y0 @ Y1 )
                                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                     => ( !! @ term @ Y0 ) ) ) ) )
                                           => ( ( !! @ subst
                                                @ ^ [Y0: subst] :
                                                    ( !! @ ( term > $o )
                                                    @ ^ [Y1: term > $o] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( var @ Y3 )
                                                                 => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                                           => ( ( Y1 @ Y2 )
                                                             => ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( var @ Y3 )
                                                                   => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                                             => ( ( !! @ ( term > $o )
                                                  @ ^ [Y0: term > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ Y1 )
                                                               => ( ( Y0 @ Y2 )
                                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                       => ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( ( var @ Y3 )
                                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                                               => ( ( !! @ ( term > $o )
                                                    @ ^ [Y0: term > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ Y1 ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ Y2 )
                                                                   => ( ( Y0 @ Y1 )
                                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ Y2 )
                                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                                           => ( !! @ term @ Y0 ) ) ) ) )
                                                 => ( ( ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                                    = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ Y0 @ id )
                                                            = Y0 ) )
                                                      & ( !! @ subst
                                                        @ ^ [Y0: subst] :
                                                            ( ( comp @ id @ Y0 )
                                                            = Y0 ) ) )
                                                   => ( ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( ( sub @ Y0 @ id )
                                                              = Y0 ) )
                                                        & ( !! @ subst
                                                          @ ^ [Y0: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y0: term] :
                                                              ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y3: term] :
                                                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                         => ( Y2 = Y0 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y0: term] :
                                                                ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y3: term] :
                                                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                                           => ( Y3 = Y1 ) ) ) ) ) )
                                                         => ( ( !! @ ( subst > term > term )
                                                              @ ^ [Y0: subst > term > term] :
                                                                  ( ( !! @ subst
                                                                    @ ^ [Y1: subst] :
                                                                        ( !! @ term
                                                                        @ ^ [Y2: term] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y3: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                 => ( !! @ ( subst > term > term )
                                                                    @ ^ [Y1: subst > term > term] :
                                                                        ( ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( !! @ term
                                                                                  @ ^ [Y4: term] :
                                                                                      ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                                      = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                                       => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                                            = ( lam @ ( Y0 @ sh @ one ) ) )
                                                                         => ( !! @ subst
                                                                            @ ^ [Y2: subst] :
                                                                                ( !! @ term
                                                                                @ ^ [Y3: term] :
                                                                                    ( ( Y0 @ Y2 @ Y3 )
                                                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                                           => ( ( !! @ ( subst > term > term )
                                                                @ ^ [Y0: subst > term > term] :
                                                                    ( ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y2: subst] :
                                                                              ( !! @ subst
                                                                              @ ^ [Y3: subst] :
                                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                                   => ( !! @ term
                                                                      @ ^ [Y1: term] :
                                                                          ( !! @ term
                                                                          @ ^ [Y2: term] :
                                                                              ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                                             != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                                             => ( ( !! @ ( subst > term > term )
                                                                  @ ^ [Y0: subst > term > term] :
                                                                      ( ( !! @ subst
                                                                        @ ^ [Y1: subst] :
                                                                            ( !! @ term
                                                                            @ ^ [Y2: term] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y3: subst] :
                                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                                               => ( ( !! @ term
                                                                    @ ^ [Y0: term] :
                                                                        ( !! @ term
                                                                        @ ^ [Y1: term] :
                                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                                          ( ( !! @ subst
                                                                            @ ^ [Y1: subst] :
                                                                                ( !! @ subst
                                                                                @ ^ [Y2: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y3: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y4: subst] :
                                                                                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                                         => ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                                           => ( ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                                                             => ( !! @ term
                                                                                @ ^ [Y1: term] :
                                                                                    ( ( var @ Y1 )
                                                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                                            ( ( !! @ term
                                                                              @ ^ [Y1: term] :
                                                                                  ( !! @ subst
                                                                                  @ ^ [Y2: subst] :
                                                                                      ( !! @ subst
                                                                                      @ ^ [Y3: subst] :
                                                                                          ( !! @ subst
                                                                                          @ ^ [Y4: subst] :
                                                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                                           => ( ( !! @ subst
                                                                                @ ^ [Y1: subst] :
                                                                                    ( !! @ term
                                                                                    @ ^ [Y2: term] :
                                                                                        ( !! @ subst
                                                                                        @ ^ [Y3: subst] :
                                                                                            ( !! @ subst
                                                                                            @ ^ [Y4: subst] :
                                                                                                ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                                               => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                                             => ( ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                                               => ( !! @ term
                                                                                  @ ^ [Y1: term] :
                                                                                      ( !! @ term
                                                                                      @ ^ [Y2: term] :
                                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                                           => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                                     => ( !! @ term
                                                                        @ ^ [Y0: term] :
                                                                            ( ?? @ ( subst > term > term )
                                                                            @ ^ [Y1: subst > term > term] :
                                                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f468]) ).

thf(f941,plain,
    ! [X1: subst > term > term] :
      ( ( X1 @ sh @ one )
     != ( sub @ sK32 @ ( push @ one @ sh ) ) ),
    inference(equality_proxy_clausification,[],[f940]) ).

thf(f940,plain,
    ! [X1: subst > term > term] :
      ( ( ( sub @ sK32 @ ( push @ one @ sh ) )
        = ( X1 @ sh @ one ) )
      = $false ),
    inference(beta_eta_normalization,[],[f939]) ).

thf(f939,plain,
    ! [X1: subst > term > term] :
      ( ( ^ [Y0: subst > term > term] :
            ( ( sub @ sK32 @ ( push @ one @ sh ) )
            = ( Y0 @ sh @ one ) )
        @ X1 )
      = $false ),
    inference(pi_clausification,[],[f938]) ).

thf(f938,plain,
    ( ( ?? @ ( subst > term > term )
      @ ^ [Y0: subst > term > term] :
          ( ( sub @ sK32 @ ( push @ one @ sh ) )
          = ( Y0 @ sh @ one ) ) )
    = $false ),
    inference(beta_eta_normalization,[],[f937]) ).

thf(f937,plain,
    ( ( ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) )
      @ sK32 )
    = $false ),
    inference(sigma_clausification,[],[f822]) ).

thf(f822,plain,
    ( ( !! @ term
      @ ^ [Y0: term] :
          ( ?? @ ( subst > term > term )
          @ ^ [Y1: subst > term > term] :
              ( ( sub @ Y0 @ ( push @ one @ sh ) )
              = ( Y1 @ sh @ one ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f771]) ).

thf(f771,plain,
    ( ( ( !! @ ( subst > term > subst > $o )
        @ ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                               => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ id @ Y1 @ id )
                         => ( ( Y0 @ id @ Y2 @ id )
                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ id @ Y1 @ id )
                         => ( ( Y0 @ id @ Y2 @ id )
                           => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
     => ( !! @ term
        @ ^ [Y0: term] :
            ( ?? @ ( subst > term > term )
            @ ^ [Y1: subst > term > term] :
                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                = ( Y1 @ sh @ one ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f769]) ).

thf(f769,plain,
    ( ( ( !! @ ( subst > term > subst > $o )
        @ ^ [Y0: subst > term > subst > $o] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( !! @ subst
                          @ ^ [Y4: subst] :
                              ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                             => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                               => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ ( sub @ Y1 @ id ) )
                     => ( Y0 @ id @ Y1 @ id ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > subst > $o )
          @ ^ [Y0: subst > term > subst > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                 => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ id @ Y1 @ id )
                           => ( ( Y0 @ id @ Y2 @ id )
                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ id @ Y1 @ id )
                           => ( ( Y0 @ id @ Y2 @ id )
                             => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
       => ( !! @ term
          @ ^ [Y0: term] :
              ( ?? @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                  = ( Y1 @ sh @ one ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f767]) ).

thf(f767,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
     => ( ( !! @ ( subst > term > subst > $o )
          @ ^ [Y0: subst > term > subst > $o] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( !! @ subst
                            @ ^ [Y4: subst] :
                                ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                               => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                 => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ ( sub @ Y1 @ id ) )
                       => ( Y0 @ id @ Y1 @ id ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > subst > $o )
            @ ^ [Y0: subst > term > subst > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                   => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ id @ Y1 @ id )
                             => ( ( Y0 @ id @ Y2 @ id )
                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ id @ Y1 @ id )
                             => ( ( Y0 @ id @ Y2 @ id )
                               => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
         => ( !! @ term
            @ ^ [Y0: term] :
                ( ?? @ ( subst > term > term )
                @ ^ [Y1: subst > term > term] :
                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                    = ( Y1 @ sh @ one ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f749]) ).

thf(f749,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
       => ( ( !! @ ( subst > term > subst > $o )
            @ ^ [Y0: subst > term > subst > $o] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( !! @ subst
                              @ ^ [Y4: subst] :
                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ ( sub @ Y1 @ id ) )
                         => ( Y0 @ id @ Y1 @ id ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > subst > $o )
              @ ^ [Y0: subst > term > subst > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ id @ Y1 @ id )
                               => ( ( Y0 @ id @ Y2 @ id )
                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ id @ Y1 @ id )
                               => ( ( Y0 @ id @ Y2 @ id )
                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
           => ( !! @ term
              @ ^ [Y0: term] :
                  ( ?? @ ( subst > term > term )
                  @ ^ [Y1: subst > term > term] :
                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f747]) ).

thf(f747,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
           => ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                     != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
         => ( ( !! @ ( subst > term > subst > $o )
              @ ^ [Y0: subst > term > subst > $o] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( !! @ subst
                                @ ^ [Y4: subst] :
                                    ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                   => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                     => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ ( sub @ Y1 @ id ) )
                           => ( Y0 @ id @ Y1 @ id ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > subst > $o )
                @ ^ [Y0: subst > term > subst > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                       => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ id @ Y1 @ id )
                                 => ( ( Y0 @ id @ Y2 @ id )
                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ id @ Y1 @ id )
                                 => ( ( Y0 @ id @ Y2 @ id )
                                   => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
             => ( !! @ term
                @ ^ [Y0: term] :
                    ( ?? @ ( subst > term > term )
                    @ ^ [Y1: subst > term > term] :
                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f734]) ).

thf(f734,plain,
    ( ( ( !! @ ( subst > term > term )
        @ ^ [Y0: subst > term > term] :
            ( ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ subst
                      @ ^ [Y3: subst] :
                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
           => ( !! @ ( subst > term > term )
              @ ^ [Y1: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( !! @ term
                            @ ^ [Y4: term] :
                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                 => ( ( ( lam @ ( Y1 @ sh @ one ) )
                      = ( lam @ ( Y0 @ sh @ one ) ) )
                   => ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( Y0 @ Y2 @ Y3 )
                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                       != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
           => ( ( !! @ ( subst > term > subst > $o )
                @ ^ [Y0: subst > term > subst > $o] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( !! @ subst
                                  @ ^ [Y4: subst] :
                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ ( sub @ Y1 @ id ) )
                             => ( Y0 @ id @ Y1 @ id ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > subst > $o )
                  @ ^ [Y0: subst > term > subst > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ id @ Y1 @ id )
                                   => ( ( Y0 @ id @ Y2 @ id )
                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ id @ Y1 @ id )
                                   => ( ( Y0 @ id @ Y2 @ id )
                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y0: term] :
                      ( ?? @ ( subst > term > term )
                      @ ^ [Y1: subst > term > term] :
                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f721]) ).

thf(f721,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                       => ( Y3 = Y1 ) ) ) ) ) )
     => ( ( !! @ ( subst > term > term )
          @ ^ [Y0: subst > term > term] :
              ( ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ subst
                        @ ^ [Y3: subst] :
                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
             => ( !! @ ( subst > term > term )
                @ ^ [Y1: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( !! @ term
                              @ ^ [Y4: term] :
                                  ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                  = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                   => ( ( ( lam @ ( Y1 @ sh @ one ) )
                        = ( lam @ ( Y0 @ sh @ one ) ) )
                     => ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( Y0 @ Y2 @ Y3 )
                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                         != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
             => ( ( !! @ ( subst > term > subst > $o )
                  @ ^ [Y0: subst > term > subst > $o] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( !! @ subst
                                    @ ^ [Y4: subst] :
                                        ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                       => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                         => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ ( sub @ Y1 @ id ) )
                               => ( Y0 @ id @ Y1 @ id ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > subst > $o )
                    @ ^ [Y0: subst > term > subst > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                           => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ id @ Y1 @ id )
                                     => ( ( Y0 @ id @ Y2 @ id )
                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ id @ Y1 @ id )
                                     => ( ( Y0 @ id @ Y2 @ id )
                                       => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y0: term] :
                        ( ?? @ ( subst > term > term )
                        @ ^ [Y1: subst > term > term] :
                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f707]) ).

thf(f707,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                       => ( Y2 = Y0 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                         => ( Y3 = Y1 ) ) ) ) ) )
       => ( ( !! @ ( subst > term > term )
            @ ^ [Y0: subst > term > term] :
                ( ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ subst
                          @ ^ [Y3: subst] :
                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
               => ( !! @ ( subst > term > term )
                  @ ^ [Y1: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( !! @ term
                                @ ^ [Y4: term] :
                                    ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                    = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                     => ( ( ( lam @ ( Y1 @ sh @ one ) )
                          = ( lam @ ( Y0 @ sh @ one ) ) )
                       => ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( Y0 @ Y2 @ Y3 )
                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                           != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
               => ( ( !! @ ( subst > term > subst > $o )
                    @ ^ [Y0: subst > term > subst > $o] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( !! @ subst
                                      @ ^ [Y4: subst] :
                                          ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                         => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                           => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ ( sub @ Y1 @ id ) )
                                 => ( Y0 @ id @ Y1 @ id ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > subst > $o )
                      @ ^ [Y0: subst > term > subst > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ id @ Y1 @ id )
                                       => ( ( Y0 @ id @ Y2 @ id )
                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ id @ Y1 @ id )
                                       => ( ( Y0 @ id @ Y2 @ id )
                                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y0: term] :
                          ( ?? @ ( subst > term > term )
                          @ ^ [Y1: subst > term > term] :
                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f688]) ).

thf(f688,plain,
    ( ( ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( sub @ Y0 @ id )
              = Y0 ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                         => ( Y2 = Y0 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                           => ( Y3 = Y1 ) ) ) ) ) )
         => ( ( !! @ ( subst > term > term )
              @ ^ [Y0: subst > term > term] :
                  ( ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ subst
                            @ ^ [Y3: subst] :
                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                 => ( !! @ ( subst > term > term )
                    @ ^ [Y1: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( !! @ term
                                  @ ^ [Y4: term] :
                                      ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                      = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                       => ( ( ( lam @ ( Y1 @ sh @ one ) )
                            = ( lam @ ( Y0 @ sh @ one ) ) )
                         => ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( Y0 @ Y2 @ Y3 )
                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                             != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                 => ( ( !! @ ( subst > term > subst > $o )
                      @ ^ [Y0: subst > term > subst > $o] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( !! @ subst
                                        @ ^ [Y4: subst] :
                                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ ( sub @ Y1 @ id ) )
                                   => ( Y0 @ id @ Y1 @ id ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > subst > $o )
                        @ ^ [Y0: subst > term > subst > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                           => ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                               => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ id @ Y1 @ id )
                                         => ( ( Y0 @ id @ Y2 @ id )
                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ id @ Y1 @ id )
                                         => ( ( Y0 @ id @ Y2 @ id )
                                           => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y0: term] :
                            ( ?? @ ( subst > term > term )
                            @ ^ [Y1: subst > term > term] :
                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f686]) ).

thf(f686,plain,
    ( ( ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ subst
              @ ^ [Y1: subst] :
                  ( !! @ subst
                  @ ^ [Y2: subst] :
                      ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                      = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ Y0 @ id )
              = Y0 ) )
        & ( !! @ subst
          @ ^ [Y0: subst] :
              ( ( comp @ id @ Y0 )
              = Y0 ) ) )
     => ( ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( sub @ Y0 @ id )
                = Y0 ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                           => ( Y2 = Y0 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                             => ( Y3 = Y1 ) ) ) ) ) )
           => ( ( !! @ ( subst > term > term )
                @ ^ [Y0: subst > term > term] :
                    ( ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ subst
                              @ ^ [Y3: subst] :
                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                   => ( !! @ ( subst > term > term )
                      @ ^ [Y1: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( !! @ term
                                    @ ^ [Y4: term] :
                                        ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                        = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                         => ( ( ( lam @ ( Y1 @ sh @ one ) )
                              = ( lam @ ( Y0 @ sh @ one ) ) )
                           => ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( Y0 @ Y2 @ Y3 )
                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                     => ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                               != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                   => ( ( !! @ ( subst > term > subst > $o )
                        @ ^ [Y0: subst > term > subst > $o] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( !! @ subst
                                          @ ^ [Y4: subst] :
                                              ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                             => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                               => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ ( sub @ Y1 @ id ) )
                                     => ( Y0 @ id @ Y1 @ id ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > subst > $o )
                          @ ^ [Y0: subst > term > subst > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                             => ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                 => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ id @ Y1 @ id )
                                           => ( ( Y0 @ id @ Y2 @ id )
                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ id @ Y1 @ id )
                                           => ( ( Y0 @ id @ Y2 @ id )
                                             => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y0: term] :
                              ( ?? @ ( subst > term > term )
                              @ ^ [Y1: subst > term > term] :
                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f625]) ).

thf(f625,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ subst
                    @ ^ [Y2: subst] :
                        ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                        = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ Y0 @ id )
                = Y0 ) )
          & ( !! @ subst
            @ ^ [Y0: subst] :
                ( ( comp @ id @ Y0 )
                = Y0 ) ) )
       => ( ( ( !! @ term
              @ ^ [Y0: term] :
                  ( ( sub @ Y0 @ id )
                  = Y0 ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                             => ( Y2 = Y0 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                               => ( Y3 = Y1 ) ) ) ) ) )
             => ( ( !! @ ( subst > term > term )
                  @ ^ [Y0: subst > term > term] :
                      ( ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ subst
                                @ ^ [Y3: subst] :
                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                     => ( !! @ ( subst > term > term )
                        @ ^ [Y1: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( !! @ term
                                      @ ^ [Y4: term] :
                                          ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                          = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                           => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                = ( lam @ ( Y0 @ sh @ one ) ) )
                             => ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( Y0 @ Y2 @ Y3 )
                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                       => ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                 != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                     => ( ( !! @ ( subst > term > subst > $o )
                          @ ^ [Y0: subst > term > subst > $o] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( !! @ subst
                                            @ ^ [Y4: subst] :
                                                ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                               => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                 => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ ( sub @ Y1 @ id ) )
                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > subst > $o )
                            @ ^ [Y0: subst > term > subst > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                               => ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                   => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ id @ Y1 @ id )
                                             => ( ( Y0 @ id @ Y2 @ id )
                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ id @ Y1 @ id )
                                             => ( ( Y0 @ id @ Y2 @ id )
                                               => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y0: term] :
                                ( ?? @ ( subst > term > term )
                                @ ^ [Y1: subst > term > term] :
                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f623]) ).

thf(f623,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( Y0 @ Y1 )
                     => ( ( Y0 @ Y2 )
                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                   => ( Y0 @ ( lam @ Y1 ) ) ) )
             => ( !! @ subst
                @ ^ [Y1: subst] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ subst
                      @ ^ [Y2: subst] :
                          ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                          = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ Y0 @ id )
                  = Y0 ) )
            & ( !! @ subst
              @ ^ [Y0: subst] :
                  ( ( comp @ id @ Y0 )
                  = Y0 ) ) )
         => ( ( ( !! @ term
                @ ^ [Y0: term] :
                    ( ( sub @ Y0 @ id )
                    = Y0 ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                               => ( Y2 = Y0 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                 => ( Y3 = Y1 ) ) ) ) ) )
               => ( ( !! @ ( subst > term > term )
                    @ ^ [Y0: subst > term > term] :
                        ( ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ subst
                                  @ ^ [Y3: subst] :
                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                       => ( !! @ ( subst > term > term )
                          @ ^ [Y1: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( !! @ term
                                        @ ^ [Y4: term] :
                                            ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                            = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                             => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                  = ( lam @ ( Y0 @ sh @ one ) ) )
                               => ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( Y0 @ Y2 @ Y3 )
                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                         => ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                   != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                       => ( ( !! @ ( subst > term > subst > $o )
                            @ ^ [Y0: subst > term > subst > $o] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( !! @ subst
                                              @ ^ [Y4: subst] :
                                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ ( sub @ Y1 @ id ) )
                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > subst > $o )
                              @ ^ [Y0: subst > term > subst > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                 => ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ id @ Y1 @ id )
                                               => ( ( Y0 @ id @ Y2 @ id )
                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ id @ Y1 @ id )
                                               => ( ( Y0 @ id @ Y2 @ id )
                                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ?? @ ( subst > term > term )
                                  @ ^ [Y1: subst > term > term] :
                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f577]) ).

thf(f577,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( !! @ ( term > $o )
            @ ^ [Y1: term > $o] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( var @ Y3 )
                         => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                   => ( ( Y1 @ Y2 )
                     => ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y1 )
                       => ( ( Y0 @ Y2 )
                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ subst
                  @ ^ [Y1: subst] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ subst
                        @ ^ [Y2: subst] :
                            ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                            = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ Y0 @ id )
                    = Y0 ) )
              & ( !! @ subst
                @ ^ [Y0: subst] :
                    ( ( comp @ id @ Y0 )
                    = Y0 ) ) )
           => ( ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( ( sub @ Y0 @ id )
                      = Y0 ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                              = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                 => ( Y2 = Y0 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                   => ( Y3 = Y1 ) ) ) ) ) )
                 => ( ( !! @ ( subst > term > term )
                      @ ^ [Y0: subst > term > term] :
                          ( ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ subst
                                    @ ^ [Y3: subst] :
                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                         => ( !! @ ( subst > term > term )
                            @ ^ [Y1: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( !! @ term
                                          @ ^ [Y4: term] :
                                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                               => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                    = ( lam @ ( Y0 @ sh @ one ) ) )
                                 => ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( Y0 @ Y2 @ Y3 )
                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                           => ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                     != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                         => ( ( !! @ ( subst > term > subst > $o )
                              @ ^ [Y0: subst > term > subst > $o] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( !! @ subst
                                                @ ^ [Y4: subst] :
                                                    ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                   => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                     => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ ( sub @ Y1 @ id ) )
                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > subst > $o )
                                @ ^ [Y0: subst > term > subst > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                   => ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                       => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ id @ Y1 @ id )
                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ id @ Y1 @ id )
                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                   => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ?? @ ( subst > term > term )
                                    @ ^ [Y1: subst > term > term] :
                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f575]) ).

thf(f575,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( !! @ term
              @ ^ [Y1: term] :
                  ( ( var @ Y1 )
                 => ( Y0 @ Y1 ) ) )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( Y0 @ Y2 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( Y0 @ Y1 )
                     => ( Y0 @ ( lam @ Y1 ) ) ) )
               => ( !! @ term @ Y0 ) ) ) ) )
     => ( ( !! @ subst
          @ ^ [Y0: subst] :
              ( !! @ ( term > $o )
              @ ^ [Y1: term > $o] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( var @ Y3 )
                           => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                     => ( ( Y1 @ Y2 )
                       => ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y1 )
                         => ( ( Y0 @ Y2 )
                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ subst
                    @ ^ [Y1: subst] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ subst
                          @ ^ [Y2: subst] :
                              ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                              = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ Y0 @ id )
                      = Y0 ) )
                & ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( ( comp @ id @ Y0 )
                      = Y0 ) ) )
             => ( ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( ( sub @ Y0 @ id )
                        = Y0 ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                   => ( Y2 = Y0 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                     => ( Y3 = Y1 ) ) ) ) ) )
                   => ( ( !! @ ( subst > term > term )
                        @ ^ [Y0: subst > term > term] :
                            ( ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ subst
                                      @ ^ [Y3: subst] :
                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                           => ( !! @ ( subst > term > term )
                              @ ^ [Y1: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( !! @ term
                                            @ ^ [Y4: term] :
                                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                 => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                      = ( lam @ ( Y0 @ sh @ one ) ) )
                                   => ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( Y0 @ Y2 @ Y3 )
                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                             => ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                       != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                           => ( ( !! @ ( subst > term > subst > $o )
                                @ ^ [Y0: subst > term > subst > $o] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y4: subst] :
                                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ ( sub @ Y1 @ id ) )
                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > subst > $o )
                                  @ ^ [Y0: subst > term > subst > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                     => ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ id @ Y1 @ id )
                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ id @ Y1 @ id )
                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ?? @ ( subst > term > term )
                                      @ ^ [Y1: subst > term > term] :
                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f573]) ).

thf(f573,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ~ ( var @ ( lam @ Y0 ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( Y0 @ Y2 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( Y0 @ Y1 )
                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                 => ( !! @ term @ Y0 ) ) ) ) )
       => ( ( !! @ subst
            @ ^ [Y0: subst] :
                ( !! @ ( term > $o )
                @ ^ [Y1: term > $o] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( var @ Y3 )
                             => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                       => ( ( Y1 @ Y2 )
                         => ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y1 )
                           => ( ( Y0 @ Y2 )
                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ subst
                      @ ^ [Y1: subst] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ subst
                            @ ^ [Y2: subst] :
                                ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ Y0 @ id )
                        = Y0 ) )
                  & ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( ( comp @ id @ Y0 )
                        = Y0 ) ) )
               => ( ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( ( sub @ Y0 @ id )
                          = Y0 ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                     => ( Y2 = Y0 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                       => ( Y3 = Y1 ) ) ) ) ) )
                     => ( ( !! @ ( subst > term > term )
                          @ ^ [Y0: subst > term > term] :
                              ( ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ subst
                                        @ ^ [Y3: subst] :
                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                             => ( !! @ ( subst > term > term )
                                @ ^ [Y1: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( !! @ term
                                              @ ^ [Y4: term] :
                                                  ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                  = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                   => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                        = ( lam @ ( Y0 @ sh @ one ) ) )
                                     => ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( Y0 @ Y2 @ Y3 )
                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                               => ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                         != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                             => ( ( !! @ ( subst > term > subst > $o )
                                  @ ^ [Y0: subst > term > subst > $o] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y4: subst] :
                                                        ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                       => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                         => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ ( sub @ Y1 @ id ) )
                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( var @ Y1 )
                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > subst > $o )
                                    @ ^ [Y0: subst > term > subst > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                       => ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                           => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ id @ Y1 @ id )
                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ id @ Y1 @ id )
                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                       => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( ?? @ ( subst > term > term )
                                        @ ^ [Y1: subst > term > term] :
                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f571]) ).

thf(f571,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ~ ( var @ ( lam @ Y0 ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( Y0 @ Y2 )
                           => ( ( Y0 @ Y1 )
                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( Y0 @ Y1 )
                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                   => ( !! @ term @ Y0 ) ) ) ) )
         => ( ( !! @ subst
              @ ^ [Y0: subst] :
                  ( !! @ ( term > $o )
                  @ ^ [Y1: term > $o] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( var @ Y3 )
                               => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                         => ( ( Y1 @ Y2 )
                           => ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y1 )
                             => ( ( Y0 @ Y2 )
                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ subst
                        @ ^ [Y1: subst] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ subst
                              @ ^ [Y2: subst] :
                                  ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                  = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ Y0 @ id )
                          = Y0 ) )
                    & ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( ( comp @ id @ Y0 )
                          = Y0 ) ) )
                 => ( ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( ( sub @ Y0 @ id )
                            = Y0 ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                       => ( Y2 = Y0 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                         => ( Y3 = Y1 ) ) ) ) ) )
                       => ( ( !! @ ( subst > term > term )
                            @ ^ [Y0: subst > term > term] :
                                ( ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ subst
                                          @ ^ [Y3: subst] :
                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                               => ( !! @ ( subst > term > term )
                                  @ ^ [Y1: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( !! @ term
                                                @ ^ [Y4: term] :
                                                    ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                    = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                     => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                          = ( lam @ ( Y0 @ sh @ one ) ) )
                                       => ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( Y0 @ Y2 @ Y3 )
                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                 => ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                           != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                               => ( ( !! @ ( subst > term > subst > $o )
                                    @ ^ [Y0: subst > term > subst > $o] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y4: subst] :
                                                          ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                         => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                           => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( var @ Y1 )
                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > subst > $o )
                                      @ ^ [Y0: subst > term > subst > $o] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                         => ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ id @ Y1 @ id )
                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ id @ Y1 @ id )
                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ?? @ ( subst > term > term )
                                          @ ^ [Y1: subst > term > term] :
                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f562]) ).

thf(f562,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( ( lam @ Y2 )
                   != ( ap @ Y0 @ Y1 ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ~ ( var @ ( lam @ Y0 ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( Y0 @ Y2 )
                             => ( ( Y0 @ Y1 )
                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( Y0 @ Y1 )
                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                     => ( !! @ term @ Y0 ) ) ) ) )
           => ( ( !! @ subst
                @ ^ [Y0: subst] :
                    ( !! @ ( term > $o )
                    @ ^ [Y1: term > $o] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( var @ Y3 )
                                 => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                           => ( ( Y1 @ Y2 )
                             => ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y1 )
                               => ( ( Y0 @ Y2 )
                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ subst
                          @ ^ [Y1: subst] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ subst
                                @ ^ [Y2: subst] :
                                    ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                    = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ Y0 @ id )
                            = Y0 ) )
                      & ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( ( comp @ id @ Y0 )
                            = Y0 ) ) )
                   => ( ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( ( sub @ Y0 @ id )
                              = Y0 ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                         => ( Y2 = Y0 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                           => ( Y3 = Y1 ) ) ) ) ) )
                         => ( ( !! @ ( subst > term > term )
                              @ ^ [Y0: subst > term > term] :
                                  ( ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ subst
                                            @ ^ [Y3: subst] :
                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                 => ( !! @ ( subst > term > term )
                                    @ ^ [Y1: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y4: term] :
                                                      ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                      = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                       => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                            = ( lam @ ( Y0 @ sh @ one ) ) )
                                         => ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( Y0 @ Y2 @ Y3 )
                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                   => ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                             != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                 => ( ( !! @ ( subst > term > subst > $o )
                                      @ ^ [Y0: subst > term > subst > $o] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y4: subst] :
                                                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( ( var @ Y1 )
                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > subst > $o )
                                        @ ^ [Y0: subst > term > subst > $o] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                           => ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                               => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ id @ Y1 @ id )
                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( Y0 @ id @ Y1 @ id )
                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                           => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( ?? @ ( subst > term > term )
                                            @ ^ [Y1: subst > term > term] :
                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f560]) ).

thf(f560,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( sub @ Y1 @ sh )
                  = ( sub @ Y0 @ sh ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( ( lam @ Y2 )
                     != ( ap @ Y0 @ Y1 ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ~ ( var @ ( lam @ Y0 ) ) )
           => ( ( !! @ ( term > $o )
                @ ^ [Y0: term > $o] :
                    ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) )
                   => ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( Y0 @ Y2 )
                               => ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( Y0 @ Y1 )
                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                       => ( !! @ term @ Y0 ) ) ) ) )
             => ( ( !! @ subst
                  @ ^ [Y0: subst] :
                      ( !! @ ( term > $o )
                      @ ^ [Y1: term > $o] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( !! @ term
                                @ ^ [Y3: term] :
                                    ( ( var @ Y3 )
                                   => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                             => ( ( Y1 @ Y2 )
                               => ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( ( Y0 @ Y2 )
                                   => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ subst
                            @ ^ [Y1: subst] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                   => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ subst
                                  @ ^ [Y2: subst] :
                                      ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                      = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ Y0 @ id )
                              = Y0 ) )
                        & ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( ( comp @ id @ Y0 )
                              = Y0 ) ) )
                     => ( ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( ( sub @ Y0 @ id )
                                = Y0 ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                        = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                           => ( Y2 = Y0 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                             => ( Y3 = Y1 ) ) ) ) ) )
                           => ( ( !! @ ( subst > term > term )
                                @ ^ [Y0: subst > term > term] :
                                    ( ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ subst
                                              @ ^ [Y3: subst] :
                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                   => ( !! @ ( subst > term > term )
                                      @ ^ [Y1: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y4: term] :
                                                        ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                        = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                         => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                              = ( lam @ ( Y0 @ sh @ one ) ) )
                                           => ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( Y0 @ Y2 @ Y3 )
                                                      = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                     => ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                               != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                       => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                   => ( ( !! @ ( subst > term > subst > $o )
                                        @ ^ [Y0: subst > term > subst > $o] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y4: subst] :
                                                              ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                             => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                               => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ ( sub @ Y1 @ id ) )
                                                     => ( Y0 @ id @ Y1 @ id ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( ( var @ Y1 )
                                                     => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > subst > $o )
                                          @ ^ [Y0: subst > term > subst > $o] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                               => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                             => ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                 => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ id @ Y1 @ id )
                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                             => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( Y0 @ id @ Y1 @ id )
                                                           => ( ( Y0 @ id @ Y2 @ id )
                                                             => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( ?? @ ( subst > term > term )
                                              @ ^ [Y1: subst > term > term] :
                                                  ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                  = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f547]) ).

thf(f547,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( ( ( lam @ Y1 )
                  = ( lam @ Y0 ) )
               => ( Y1 = Y0 ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( sub @ Y1 @ sh )
                    = ( sub @ Y0 @ sh ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( ( lam @ Y2 )
                       != ( ap @ Y0 @ Y1 ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ~ ( var @ ( lam @ Y0 ) ) )
             => ( ( !! @ ( term > $o )
                  @ ^ [Y0: term > $o] :
                      ( ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( var @ Y1 )
                           => ( Y0 @ Y1 ) ) )
                     => ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( Y0 @ Y2 )
                                 => ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( Y0 @ Y1 )
                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                         => ( !! @ term @ Y0 ) ) ) ) )
               => ( ( !! @ subst
                    @ ^ [Y0: subst] :
                        ( !! @ ( term > $o )
                        @ ^ [Y1: term > $o] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( !! @ term
                                  @ ^ [Y3: term] :
                                      ( ( var @ Y3 )
                                     => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                               => ( ( Y1 @ Y2 )
                                 => ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( ( Y0 @ Y2 )
                                     => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ subst
                              @ ^ [Y1: subst] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                     => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ subst
                                    @ ^ [Y2: subst] :
                                        ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                        = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ Y0 @ id )
                                = Y0 ) )
                          & ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( ( comp @ id @ Y0 )
                                = Y0 ) ) )
                       => ( ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( ( sub @ Y0 @ id )
                                  = Y0 ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                          = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y0: term] :
                                  ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                             => ( Y2 = Y0 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                               => ( Y3 = Y1 ) ) ) ) ) )
                             => ( ( !! @ ( subst > term > term )
                                  @ ^ [Y0: subst > term > term] :
                                      ( ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ subst
                                                @ ^ [Y3: subst] :
                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                     => ( !! @ ( subst > term > term )
                                        @ ^ [Y1: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y4: term] :
                                                          ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                          = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                           => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                = ( lam @ ( Y0 @ sh @ one ) ) )
                                             => ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( Y0 @ Y2 @ Y3 )
                                                        = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                       => ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                 != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                         => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                     => ( ( !! @ ( subst > term > subst > $o )
                                          @ ^ [Y0: subst > term > subst > $o] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y4: subst] :
                                                                ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                               => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                 => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ ( sub @ Y1 @ id ) )
                                                       => ( Y0 @ id @ Y1 @ id ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( ( var @ Y1 )
                                                       => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > subst > $o )
                                            @ ^ [Y0: subst > term > subst > $o] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                 => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                               => ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                   => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ id @ Y1 @ id )
                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                               => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( Y0 @ id @ Y1 @ id )
                                                             => ( ( Y0 @ id @ Y2 @ id )
                                                               => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( ?? @ ( subst > term > term )
                                                @ ^ [Y1: subst > term > term] :
                                                    ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                    = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f534]) ).

thf(f534,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y1 @ Y3 )
                          = ( ap @ Y0 @ Y2 ) )
                       => ( Y3 = Y2 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( ( ( lam @ Y1 )
                    = ( lam @ Y0 ) )
                 => ( Y1 = Y0 ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( sub @ Y1 @ sh )
                      = ( sub @ Y0 @ sh ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( ( lam @ Y2 )
                         != ( ap @ Y0 @ Y1 ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ~ ( var @ ( lam @ Y0 ) ) )
               => ( ( !! @ ( term > $o )
                    @ ^ [Y0: term > $o] :
                        ( ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( var @ Y1 )
                             => ( Y0 @ Y1 ) ) )
                       => ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( Y0 @ Y2 )
                                   => ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( Y0 @ Y1 )
                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                           => ( !! @ term @ Y0 ) ) ) ) )
                 => ( ( !! @ subst
                      @ ^ [Y0: subst] :
                          ( !! @ ( term > $o )
                          @ ^ [Y1: term > $o] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( !! @ term
                                    @ ^ [Y3: term] :
                                        ( ( var @ Y3 )
                                       => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                 => ( ( Y1 @ Y2 )
                                   => ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( ( Y0 @ Y2 )
                                       => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ subst
                                @ ^ [Y1: subst] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                       => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ subst
                                      @ ^ [Y2: subst] :
                                          ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                          = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ Y0 @ id )
                                  = Y0 ) )
                            & ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( ( comp @ id @ Y0 )
                                  = Y0 ) ) )
                         => ( ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( ( sub @ Y0 @ id )
                                    = Y0 ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                            = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y0: term] :
                                    ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                  = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                               => ( Y2 = Y0 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                 => ( Y3 = Y1 ) ) ) ) ) )
                               => ( ( !! @ ( subst > term > term )
                                    @ ^ [Y0: subst > term > term] :
                                        ( ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y3: subst] :
                                                      ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                      = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                       => ( !! @ ( subst > term > term )
                                          @ ^ [Y1: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y4: term] :
                                                            ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                            = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                             => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                  = ( lam @ ( Y0 @ sh @ one ) ) )
                                               => ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( Y0 @ Y2 @ Y3 )
                                                          = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                         => ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                   != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                           => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                       => ( ( !! @ ( subst > term > subst > $o )
                                            @ ^ [Y0: subst > term > subst > $o] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y4: subst] :
                                                                  ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                 => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                   => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ ( sub @ Y1 @ id ) )
                                                         => ( Y0 @ id @ Y1 @ id ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( ( var @ Y1 )
                                                         => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > subst > $o )
                                              @ ^ [Y0: subst > term > subst > $o] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                   => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                 => ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                     => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ id @ Y1 @ id )
                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                 => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( ( Y0 @ id @ Y1 @ id )
                                                               => ( ( Y0 @ id @ Y2 @ id )
                                                                 => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( ?? @ ( subst > term > term )
                                                  @ ^ [Y1: subst > term > term] :
                                                      ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                      = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f517]) ).

thf(f517,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( !! @ term
            @ ^ [Y1: term] :
                ( !! @ term
                @ ^ [Y2: term] :
                    ( !! @ term
                    @ ^ [Y3: term] :
                        ( ( ( ap @ Y3 @ Y1 )
                          = ( ap @ Y0 @ Y2 ) )
                       => ( Y3 = Y0 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y1 @ Y3 )
                            = ( ap @ Y0 @ Y2 ) )
                         => ( Y3 = Y2 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( ( ( lam @ Y1 )
                      = ( lam @ Y0 ) )
                   => ( Y1 = Y0 ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( sub @ Y1 @ sh )
                        = ( sub @ Y0 @ sh ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( ( lam @ Y2 )
                           != ( ap @ Y0 @ Y1 ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ~ ( var @ ( lam @ Y0 ) ) )
                 => ( ( !! @ ( term > $o )
                      @ ^ [Y0: term > $o] :
                          ( ( !! @ term
                            @ ^ [Y1: term] :
                                ( ( var @ Y1 )
                               => ( Y0 @ Y1 ) ) )
                         => ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( Y0 @ Y2 )
                                     => ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( Y0 @ Y1 )
                                   => ( Y0 @ ( lam @ Y1 ) ) ) )
                             => ( !! @ term @ Y0 ) ) ) ) )
                   => ( ( !! @ subst
                        @ ^ [Y0: subst] :
                            ( !! @ ( term > $o )
                            @ ^ [Y1: term > $o] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( !! @ term
                                      @ ^ [Y3: term] :
                                          ( ( var @ Y3 )
                                         => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                   => ( ( Y1 @ Y2 )
                                     => ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( ( Y0 @ Y2 )
                                         => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ subst
                                  @ ^ [Y1: subst] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                         => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ subst
                                        @ ^ [Y2: subst] :
                                            ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                            = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ Y0 @ id )
                                    = Y0 ) )
                              & ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( ( comp @ id @ Y0 )
                                    = Y0 ) ) )
                           => ( ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( ( sub @ Y0 @ id )
                                      = Y0 ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                              = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y0: term] :
                                      ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                    = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                 => ( Y2 = Y0 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                   => ( Y3 = Y1 ) ) ) ) ) )
                                 => ( ( !! @ ( subst > term > term )
                                      @ ^ [Y0: subst > term > term] :
                                          ( ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y3: subst] :
                                                        ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                        = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                         => ( !! @ ( subst > term > term )
                                            @ ^ [Y1: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y4: term] :
                                                              ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                              = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                               => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                    = ( lam @ ( Y0 @ sh @ one ) ) )
                                                 => ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( Y0 @ Y2 @ Y3 )
                                                            = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                           => ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                     != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                             => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                         => ( ( !! @ ( subst > term > subst > $o )
                                              @ ^ [Y0: subst > term > subst > $o] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y4: subst] :
                                                                    ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                   => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                 => ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                     => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ ( sub @ Y1 @ id ) )
                                                           => ( Y0 @ id @ Y1 @ id ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( ( var @ Y1 )
                                                           => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > subst > $o )
                                                @ ^ [Y0: subst > term > subst > $o] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                     => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                   => ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                       => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                   => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( ( Y0 @ id @ Y1 @ id )
                                                                 => ( ( Y0 @ id @ Y2 @ id )
                                                                   => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( ?? @ ( subst > term > term )
                                                    @ ^ [Y1: subst > term > term] :
                                                        ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                        = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f515]) ).

thf(f515,plain,
    ( ( ( !! @ ( term > $o )
        @ ^ [Y0: term > $o] :
            ( ( Y0 @ one )
           => ( ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( ( Y0 @ Y1 )
                     => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
             => ( !! @ term
                @ ^ [Y1: term] :
                    ( ( var @ Y1 )
                   => ( Y0 @ Y1 ) ) ) ) ) )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( !! @ term
              @ ^ [Y1: term] :
                  ( !! @ term
                  @ ^ [Y2: term] :
                      ( !! @ term
                      @ ^ [Y3: term] :
                          ( ( ( ap @ Y3 @ Y1 )
                            = ( ap @ Y0 @ Y2 ) )
                         => ( Y3 = Y0 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y1 @ Y3 )
                              = ( ap @ Y0 @ Y2 ) )
                           => ( Y3 = Y2 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( ( lam @ Y1 )
                        = ( lam @ Y0 ) )
                     => ( Y1 = Y0 ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( sub @ Y1 @ sh )
                          = ( sub @ Y0 @ sh ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( ( lam @ Y2 )
                             != ( ap @ Y0 @ Y1 ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ~ ( var @ ( lam @ Y0 ) ) )
                   => ( ( !! @ ( term > $o )
                        @ ^ [Y0: term > $o] :
                            ( ( !! @ term
                              @ ^ [Y1: term] :
                                  ( ( var @ Y1 )
                                 => ( Y0 @ Y1 ) ) )
                           => ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( Y0 @ Y2 )
                                       => ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( Y0 @ Y1 )
                                     => ( Y0 @ ( lam @ Y1 ) ) ) )
                               => ( !! @ term @ Y0 ) ) ) ) )
                     => ( ( !! @ subst
                          @ ^ [Y0: subst] :
                              ( !! @ ( term > $o )
                              @ ^ [Y1: term > $o] :
                                  ( !! @ term
                                  @ ^ [Y2: term] :
                                      ( ( !! @ term
                                        @ ^ [Y3: term] :
                                            ( ( var @ Y3 )
                                           => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                     => ( ( Y1 @ Y2 )
                                       => ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( ( Y0 @ Y2 )
                                           => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ subst
                                    @ ^ [Y1: subst] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                           => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ subst
                                          @ ^ [Y2: subst] :
                                              ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                              = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ Y0 @ id )
                                      = Y0 ) )
                                & ( !! @ subst
                                  @ ^ [Y0: subst] :
                                      ( ( comp @ id @ Y0 )
                                      = Y0 ) ) )
                             => ( ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( ( sub @ Y0 @ id )
                                        = Y0 ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y0: term] :
                                        ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                      = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                   => ( Y2 = Y0 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                     => ( Y3 = Y1 ) ) ) ) ) )
                                   => ( ( !! @ ( subst > term > term )
                                        @ ^ [Y0: subst > term > term] :
                                            ( ( !! @ subst
                                              @ ^ [Y1: subst] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y3: subst] :
                                                          ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                          = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                           => ( !! @ ( subst > term > term )
                                              @ ^ [Y1: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y4: term] :
                                                                ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                 => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                      = ( lam @ ( Y0 @ sh @ one ) ) )
                                                   => ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y3: term] :
                                                              ( ( Y0 @ Y2 @ Y3 )
                                                              = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ subst
                                                    @ ^ [Y2: subst] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                             => ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                       != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                               => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y0: term] :
                                                  ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                           => ( ( !! @ ( subst > term > subst > $o )
                                                @ ^ [Y0: subst > term > subst > $o] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y4: subst] :
                                                                      ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                     => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                   => ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                       => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ ( sub @ Y1 @ id ) )
                                                             => ( Y0 @ id @ Y1 @ id ) ) )
                                                       => ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( ( var @ Y1 )
                                                             => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > subst > $o )
                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                      ( ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                       => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                     => ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y2: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                         => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                     => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( ( Y0 @ id @ Y1 @ id )
                                                                   => ( ( Y0 @ id @ Y2 @ id )
                                                                     => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( ?? @ ( subst > term > term )
                                                      @ ^ [Y1: subst > term > term] :
                                                          ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                          = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f513]) ).

thf(f513,plain,
    ( ( ( !! @ term
        @ ^ [Y0: term] :
            ( ( var @ Y0 )
           => ( var @ ( sub @ Y0 @ sh ) ) ) )
     => ( ( !! @ ( term > $o )
          @ ^ [Y0: term > $o] :
              ( ( Y0 @ one )
             => ( ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( ( Y0 @ Y1 )
                       => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
               => ( !! @ term
                  @ ^ [Y1: term] :
                      ( ( var @ Y1 )
                     => ( Y0 @ Y1 ) ) ) ) ) )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( !! @ term
                @ ^ [Y1: term] :
                    ( !! @ term
                    @ ^ [Y2: term] :
                        ( !! @ term
                        @ ^ [Y3: term] :
                            ( ( ( ap @ Y3 @ Y1 )
                              = ( ap @ Y0 @ Y2 ) )
                           => ( Y3 = Y0 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y1 @ Y3 )
                                = ( ap @ Y0 @ Y2 ) )
                             => ( Y3 = Y2 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( ( lam @ Y1 )
                          = ( lam @ Y0 ) )
                       => ( Y1 = Y0 ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( sub @ Y1 @ sh )
                            = ( sub @ Y0 @ sh ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( !! @ term
                            @ ^ [Y2: term] :
                                ( ( lam @ Y2 )
                               != ( ap @ Y0 @ Y1 ) ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ~ ( var @ ( lam @ Y0 ) ) )
                     => ( ( !! @ ( term > $o )
                          @ ^ [Y0: term > $o] :
                              ( ( !! @ term
                                @ ^ [Y1: term] :
                                    ( ( var @ Y1 )
                                   => ( Y0 @ Y1 ) ) )
                             => ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( Y0 @ Y2 )
                                         => ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( Y0 @ Y1 )
                                       => ( Y0 @ ( lam @ Y1 ) ) ) )
                                 => ( !! @ term @ Y0 ) ) ) ) )
                       => ( ( !! @ subst
                            @ ^ [Y0: subst] :
                                ( !! @ ( term > $o )
                                @ ^ [Y1: term > $o] :
                                    ( !! @ term
                                    @ ^ [Y2: term] :
                                        ( ( !! @ term
                                          @ ^ [Y3: term] :
                                              ( ( var @ Y3 )
                                             => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                       => ( ( Y1 @ Y2 )
                                         => ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( ( Y0 @ Y2 )
                                             => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ subst
                                      @ ^ [Y1: subst] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                             => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( var @ Y1 )
                                         => ( Y0 @ Y1 ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y2 )
                                               => ( ( Y0 @ Y1 )
                                                 => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ term @ Y0 ) ) ) ) )
                             => ( ( ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ subst
                                            @ ^ [Y2: subst] :
                                                ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ Y0 @ id )
                                        = Y0 ) )
                                  & ( !! @ subst
                                    @ ^ [Y0: subst] :
                                        ( ( comp @ id @ Y0 )
                                        = Y0 ) ) )
                               => ( ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( ( sub @ Y0 @ id )
                                          = Y0 ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                  = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y0: term] :
                                          ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                        = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                     => ( Y2 = Y0 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                       => ( Y3 = Y1 ) ) ) ) ) )
                                     => ( ( !! @ ( subst > term > term )
                                          @ ^ [Y0: subst > term > term] :
                                              ( ( !! @ subst
                                                @ ^ [Y1: subst] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y3: subst] :
                                                            ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                            = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                             => ( !! @ ( subst > term > term )
                                                @ ^ [Y1: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y4: term] :
                                                                  ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                  = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                   => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                        = ( lam @ ( Y0 @ sh @ one ) ) )
                                                     => ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y3: term] :
                                                                ( ( Y0 @ Y2 @ Y3 )
                                                                = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ subst
                                                      @ ^ [Y2: subst] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                               => ( !! @ term
                                                  @ ^ [Y1: term] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                         != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                 => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                           => ( ( !! @ term
                                                @ ^ [Y0: term] :
                                                    ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                             => ( ( !! @ ( subst > term > subst > $o )
                                                  @ ^ [Y0: subst > term > subst > $o] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y4: subst] :
                                                                        ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                       => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                     => ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                         => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ ( sub @ Y1 @ id ) )
                                                               => ( Y0 @ id @ Y1 @ id ) ) )
                                                         => ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( ( var @ Y1 )
                                                               => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                               => ( ( !! @ ( subst > term > subst > $o )
                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                        ( ( !! @ term
                                                          @ ^ [Y1: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y3: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                         => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                       => ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y2: term] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                           => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                       => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( ( Y0 @ id @ Y1 @ id )
                                                                     => ( ( Y0 @ id @ Y2 @ id )
                                                                       => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( ?? @ ( subst > term > term )
                                                        @ ^ [Y1: subst > term > term] :
                                                            ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                            = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f508]) ).

thf(f508,plain,
    ( ( ( var @ one )
     => ( ( !! @ term
          @ ^ [Y0: term] :
              ( ( var @ Y0 )
             => ( var @ ( sub @ Y0 @ sh ) ) ) )
       => ( ( !! @ ( term > $o )
            @ ^ [Y0: term > $o] :
                ( ( Y0 @ one )
               => ( ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( ( Y0 @ Y1 )
                         => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                 => ( !! @ term
                    @ ^ [Y1: term] :
                        ( ( var @ Y1 )
                       => ( Y0 @ Y1 ) ) ) ) ) )
         => ( ( !! @ term
              @ ^ [Y0: term] :
                  ( !! @ term
                  @ ^ [Y1: term] :
                      ( !! @ term
                      @ ^ [Y2: term] :
                          ( !! @ term
                          @ ^ [Y3: term] :
                              ( ( ( ap @ Y3 @ Y1 )
                                = ( ap @ Y0 @ Y2 ) )
                             => ( Y3 = Y0 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y1 @ Y3 )
                                  = ( ap @ Y0 @ Y2 ) )
                               => ( Y3 = Y2 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( ( lam @ Y1 )
                            = ( lam @ Y0 ) )
                         => ( Y1 = Y0 ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( sub @ Y1 @ sh )
                              = ( sub @ Y0 @ sh ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( !! @ term
                              @ ^ [Y2: term] :
                                  ( ( lam @ Y2 )
                                 != ( ap @ Y0 @ Y1 ) ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ~ ( var @ ( lam @ Y0 ) ) )
                       => ( ( !! @ ( term > $o )
                            @ ^ [Y0: term > $o] :
                                ( ( !! @ term
                                  @ ^ [Y1: term] :
                                      ( ( var @ Y1 )
                                     => ( Y0 @ Y1 ) ) )
                               => ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( Y0 @ Y2 )
                                           => ( ( Y0 @ Y1 )
                                             => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( ( Y0 @ Y1 )
                                         => ( Y0 @ ( lam @ Y1 ) ) ) )
                                   => ( !! @ term @ Y0 ) ) ) ) )
                         => ( ( !! @ subst
                              @ ^ [Y0: subst] :
                                  ( !! @ ( term > $o )
                                  @ ^ [Y1: term > $o] :
                                      ( !! @ term
                                      @ ^ [Y2: term] :
                                          ( ( !! @ term
                                            @ ^ [Y3: term] :
                                                ( ( var @ Y3 )
                                               => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                         => ( ( Y1 @ Y2 )
                                           => ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                           => ( ( !! @ ( term > $o )
                                @ ^ [Y0: term > $o] :
                                    ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y1 )
                                             => ( ( Y0 @ Y2 )
                                               => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ subst
                                        @ ^ [Y1: subst] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y3: term] :
                                                      ( ( var @ Y3 )
                                                     => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                               => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( var @ Y1 )
                                           => ( Y0 @ Y1 ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( Y0 @ Y2 )
                                                 => ( ( Y0 @ Y1 )
                                                   => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( ( Y0 @ Y2 )
                                                     => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                               => ( Y0 @ ( lam @ Y1 ) ) ) )
                                         => ( !! @ term @ Y0 ) ) ) ) )
                               => ( ( ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ subst
                                              @ ^ [Y2: subst] :
                                                  ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                  = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ Y0 @ id )
                                          = Y0 ) )
                                    & ( !! @ subst
                                      @ ^ [Y0: subst] :
                                          ( ( comp @ id @ Y0 )
                                          = Y0 ) ) )
                                 => ( ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( ( sub @ Y0 @ id )
                                            = Y0 ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                    = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y0: term] :
                                            ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                          = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                       => ( Y2 = Y0 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                         => ( Y3 = Y1 ) ) ) ) ) )
                                       => ( ( !! @ ( subst > term > term )
                                            @ ^ [Y0: subst > term > term] :
                                                ( ( !! @ subst
                                                  @ ^ [Y1: subst] :
                                                      ( !! @ term
                                                      @ ^ [Y2: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y3: subst] :
                                                              ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                              = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                               => ( !! @ ( subst > term > term )
                                                  @ ^ [Y1: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y4: term] :
                                                                    ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                    = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                     => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                          = ( lam @ ( Y0 @ sh @ one ) ) )
                                                       => ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ term
                                                              @ ^ [Y3: term] :
                                                                  ( ( Y0 @ Y2 @ Y3 )
                                                                  = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ subst
                                                        @ ^ [Y2: subst] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                 => ( !! @ term
                                                    @ ^ [Y1: term] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                           != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ subst
                                                      @ ^ [Y1: subst] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                   => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                             => ( ( !! @ term
                                                  @ ^ [Y0: term] :
                                                      ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                               => ( ( !! @ ( subst > term > subst > $o )
                                                    @ ^ [Y0: subst > term > subst > $o] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y1: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y2: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y3: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y4: subst] :
                                                                          ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                         => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                       => ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                           => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ ( sub @ Y1 @ id ) )
                                                                 => ( Y0 @ id @ Y1 @ id ) ) )
                                                           => ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( ( var @ Y1 )
                                                                 => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                          ( ( !! @ term
                                                            @ ^ [Y1: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ subst
                                                                    @ ^ [Y3: subst] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                           => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                         => ( ( !! @ subst
                                                              @ ^ [Y1: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y2: term] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                             => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                         => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( ( Y0 @ id @ Y1 @ id )
                                                                       => ( ( Y0 @ id @ Y2 @ id )
                                                                         => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y0: term] :
                                                          ( ?? @ ( subst > term > term )
                                                          @ ^ [Y1: subst > term > term] :
                                                              ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                              = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f506]) ).

thf(f506,plain,
    ( ( ( !! @ subst
        @ ^ [Y0: subst] :
            ( ( push @ ( sub @ one @ Y0 ) @ ( comp @ sh @ Y0 ) )
            = Y0 ) )
     => ( ( var @ one )
       => ( ( !! @ term
            @ ^ [Y0: term] :
                ( ( var @ Y0 )
               => ( var @ ( sub @ Y0 @ sh ) ) ) )
         => ( ( !! @ ( term > $o )
              @ ^ [Y0: term > $o] :
                  ( ( Y0 @ one )
                 => ( ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( ( Y0 @ Y1 )
                           => ( Y0 @ ( sub @ Y1 @ sh ) ) ) ) )
                   => ( !! @ term
                      @ ^ [Y1: term] :
                          ( ( var @ Y1 )
                         => ( Y0 @ Y1 ) ) ) ) ) )
           => ( ( !! @ term
                @ ^ [Y0: term] :
                    ( !! @ term
                    @ ^ [Y1: term] :
                        ( !! @ term
                        @ ^ [Y2: term] :
                            ( !! @ term
                            @ ^ [Y3: term] :
                                ( ( ( ap @ Y3 @ Y1 )
                                  = ( ap @ Y0 @ Y2 ) )
                               => ( Y3 = Y0 ) ) ) ) ) )
             => ( ( !! @ term
                  @ ^ [Y0: term] :
                      ( !! @ term
                      @ ^ [Y1: term] :
                          ( !! @ term
                          @ ^ [Y2: term] :
                              ( !! @ term
                              @ ^ [Y3: term] :
                                  ( ( ( ap @ Y1 @ Y3 )
                                    = ( ap @ Y0 @ Y2 ) )
                                 => ( Y3 = Y2 ) ) ) ) ) )
               => ( ( !! @ term
                    @ ^ [Y0: term] :
                        ( !! @ term
                        @ ^ [Y1: term] :
                            ( ( ( lam @ Y1 )
                              = ( lam @ Y0 ) )
                           => ( Y1 = Y0 ) ) ) )
                 => ( ( !! @ term
                      @ ^ [Y0: term] :
                          ( !! @ term
                          @ ^ [Y1: term] :
                              ( ( ( sub @ Y1 @ sh )
                                = ( sub @ Y0 @ sh ) )
                             => ( Y1 = Y0 ) ) ) )
                   => ( ( !! @ term
                        @ ^ [Y0: term] :
                            ( !! @ term
                            @ ^ [Y1: term] :
                                ( !! @ term
                                @ ^ [Y2: term] :
                                    ( ( lam @ Y2 )
                                   != ( ap @ Y0 @ Y1 ) ) ) ) )
                     => ( ( !! @ term
                          @ ^ [Y0: term] :
                              ( !! @ term
                              @ ^ [Y1: term] :
                                  ~ ( var @ ( ap @ Y1 @ Y0 ) ) ) )
                       => ( ( !! @ term
                            @ ^ [Y0: term] :
                                ~ ( var @ ( lam @ Y0 ) ) )
                         => ( ( !! @ ( term > $o )
                              @ ^ [Y0: term > $o] :
                                  ( ( !! @ term
                                    @ ^ [Y1: term] :
                                        ( ( var @ Y1 )
                                       => ( Y0 @ Y1 ) ) )
                                 => ( ( !! @ term
                                      @ ^ [Y1: term] :
                                          ( !! @ term
                                          @ ^ [Y2: term] :
                                              ( ( Y0 @ Y2 )
                                             => ( ( Y0 @ Y1 )
                                               => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                   => ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( ( Y0 @ Y1 )
                                           => ( Y0 @ ( lam @ Y1 ) ) ) )
                                     => ( !! @ term @ Y0 ) ) ) ) )
                           => ( ( !! @ subst
                                @ ^ [Y0: subst] :
                                    ( !! @ ( term > $o )
                                    @ ^ [Y1: term > $o] :
                                        ( !! @ term
                                        @ ^ [Y2: term] :
                                            ( ( !! @ term
                                              @ ^ [Y3: term] :
                                                  ( ( var @ Y3 )
                                                 => ( Y1 @ ( sub @ Y3 @ Y0 ) ) ) )
                                           => ( ( Y1 @ Y2 )
                                             => ( !! @ term
                                                @ ^ [Y3: term] :
                                                    ( ( var @ Y3 )
                                                   => ( Y1 @ ( sub @ Y3 @ ( push @ Y2 @ Y0 ) ) ) ) ) ) ) ) ) )
                             => ( ( !! @ ( term > $o )
                                  @ ^ [Y0: term > $o] :
                                      ( ( !! @ term
                                        @ ^ [Y1: term] :
                                            ( !! @ term
                                            @ ^ [Y2: term] :
                                                ( ( Y0 @ Y1 )
                                               => ( ( Y0 @ Y2 )
                                                 => ( Y0 @ ( ap @ Y1 @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                             => ( Y0 @ ( lam @ Y1 ) ) ) )
                                       => ( !! @ subst
                                          @ ^ [Y1: subst] :
                                              ( !! @ term
                                              @ ^ [Y2: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y3: term] :
                                                        ( ( var @ Y3 )
                                                       => ( Y0 @ ( sub @ Y3 @ Y1 ) ) ) )
                                                 => ( Y0 @ ( sub @ Y2 @ Y1 ) ) ) ) ) ) ) )
                               => ( ( !! @ ( term > $o )
                                    @ ^ [Y0: term > $o] :
                                        ( ( !! @ term
                                          @ ^ [Y1: term] :
                                              ( ( var @ Y1 )
                                             => ( Y0 @ Y1 ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y1: term] :
                                                ( !! @ term
                                                @ ^ [Y2: term] :
                                                    ( ( Y0 @ Y2 )
                                                   => ( ( Y0 @ Y1 )
                                                     => ( Y0 @ ( ap @ Y2 @ Y1 ) ) ) ) ) )
                                         => ( ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( ( Y0 @ Y2 )
                                                       => ( Y0 @ ( sub @ Y1 @ ( push @ Y2 @ id ) ) ) ) )
                                                 => ( Y0 @ ( lam @ Y1 ) ) ) )
                                           => ( !! @ term @ Y0 ) ) ) ) )
                                 => ( ( ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( !! @ subst
                                            @ ^ [Y1: subst] :
                                                ( !! @ subst
                                                @ ^ [Y2: subst] :
                                                    ( ( comp @ ( comp @ Y2 @ Y0 ) @ Y1 )
                                                    = ( comp @ Y2 @ ( comp @ Y0 @ Y1 ) ) ) ) ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ Y0 @ id )
                                            = Y0 ) )
                                      & ( !! @ subst
                                        @ ^ [Y0: subst] :
                                            ( ( comp @ id @ Y0 )
                                            = Y0 ) ) )
                                   => ( ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( ( sub @ Y0 @ id )
                                              = Y0 ) )
                                        & ( !! @ subst
                                          @ ^ [Y0: subst] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ subst
                                                  @ ^ [Y2: subst] :
                                                      ( ( sub @ Y1 @ ( comp @ Y0 @ Y2 ) )
                                                      = ( sub @ ( sub @ Y1 @ Y0 ) @ Y2 ) ) ) ) ) )
                                     => ( ( !! @ term
                                          @ ^ [Y0: term] :
                                              ( !! @ term
                                              @ ^ [Y1: term] :
                                                  ( !! @ term
                                                  @ ^ [Y2: term] :
                                                      ( !! @ term
                                                      @ ^ [Y3: term] :
                                                          ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                            = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                         => ( Y2 = Y0 ) ) ) ) ) )
                                       => ( ( !! @ term
                                            @ ^ [Y0: term] :
                                                ( !! @ term
                                                @ ^ [Y1: term] :
                                                    ( !! @ term
                                                    @ ^ [Y2: term] :
                                                        ( !! @ term
                                                        @ ^ [Y3: term] :
                                                            ( ( ( ap @ ( sub @ Y2 @ id ) @ Y3 )
                                                              = ( ap @ ( sub @ Y0 @ id ) @ Y1 ) )
                                                           => ( Y3 = Y1 ) ) ) ) ) )
                                         => ( ( !! @ ( subst > term > term )
                                              @ ^ [Y0: subst > term > term] :
                                                  ( ( !! @ subst
                                                    @ ^ [Y1: subst] :
                                                        ( !! @ term
                                                        @ ^ [Y2: term] :
                                                            ( !! @ subst
                                                            @ ^ [Y3: subst] :
                                                                ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                 => ( !! @ ( subst > term > term )
                                                    @ ^ [Y1: subst > term > term] :
                                                        ( ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( !! @ term
                                                                  @ ^ [Y4: term] :
                                                                      ( ( Y1 @ ( comp @ Y2 @ Y3 ) @ ( sub @ Y4 @ Y3 ) )
                                                                      = ( sub @ ( Y1 @ Y2 @ Y4 ) @ Y3 ) ) ) ) )
                                                       => ( ( ( lam @ ( Y1 @ sh @ one ) )
                                                            = ( lam @ ( Y0 @ sh @ one ) ) )
                                                         => ( !! @ subst
                                                            @ ^ [Y2: subst] :
                                                                ( !! @ term
                                                                @ ^ [Y3: term] :
                                                                    ( ( Y0 @ Y2 @ Y3 )
                                                                    = ( Y1 @ Y2 @ Y3 ) ) ) ) ) ) ) ) )
                                           => ( ( !! @ ( subst > term > term )
                                                @ ^ [Y0: subst > term > term] :
                                                    ( ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ subst
                                                          @ ^ [Y2: subst] :
                                                              ( !! @ subst
                                                              @ ^ [Y3: subst] :
                                                                  ( ( Y0 @ ( comp @ Y3 @ Y2 ) @ ( sub @ Y1 @ Y2 ) )
                                                                  = ( sub @ ( Y0 @ Y3 @ Y1 ) @ Y2 ) ) ) ) )
                                                   => ( !! @ term
                                                      @ ^ [Y1: term] :
                                                          ( !! @ term
                                                          @ ^ [Y2: term] :
                                                              ( ( ap @ ( sub @ Y2 @ id ) @ Y1 )
                                                             != ( lam @ ( Y0 @ sh @ one ) ) ) ) ) ) )
                                             => ( ( !! @ ( subst > term > term )
                                                  @ ^ [Y0: subst > term > term] :
                                                      ( ( !! @ subst
                                                        @ ^ [Y1: subst] :
                                                            ( !! @ term
                                                            @ ^ [Y2: term] :
                                                                ( !! @ subst
                                                                @ ^ [Y3: subst] :
                                                                    ( ( Y0 @ ( comp @ Y3 @ Y1 ) @ ( sub @ Y2 @ Y1 ) )
                                                                    = ( sub @ ( Y0 @ Y3 @ Y2 ) @ Y1 ) ) ) ) )
                                                     => ~ ( var @ ( sub @ ( lam @ ( Y0 @ sh @ one ) ) @ id ) ) ) )
                                               => ( ( !! @ term
                                                    @ ^ [Y0: term] :
                                                        ( !! @ term
                                                        @ ^ [Y1: term] :
                                                            ~ ( var @ ( sub @ ( ap @ ( sub @ Y0 @ id ) @ Y1 ) @ id ) ) ) )
                                                 => ( ( !! @ ( subst > term > subst > $o )
                                                      @ ^ [Y0: subst > term > subst > $o] :
                                                          ( ( !! @ subst
                                                            @ ^ [Y1: subst] :
                                                                ( !! @ subst
                                                                @ ^ [Y2: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y3: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y4: subst] :
                                                                            ( ( Y0 @ Y4 @ Y3 @ ( comp @ Y2 @ Y1 ) )
                                                                           => ( Y0 @ ( comp @ Y4 @ Y2 ) @ ( sub @ Y3 @ Y2 ) @ Y1 ) ) ) ) ) )
                                                         => ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 )
                                                                             => ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) ) ) ) ) ) )
                                                           => ( ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ ( sub @ Y1 @ id ) )
                                                                   => ( Y0 @ id @ Y1 @ id ) ) )
                                                             => ( !! @ term
                                                                @ ^ [Y1: term] :
                                                                    ( ( var @ Y1 )
                                                                   => ( Y0 @ id @ Y1 @ id ) ) ) ) ) ) )
                                                   => ( ( !! @ ( subst > term > subst > $o )
                                                        @ ^ [Y0: subst > term > subst > $o] :
                                                            ( ( !! @ term
                                                              @ ^ [Y1: term] :
                                                                  ( !! @ subst
                                                                  @ ^ [Y2: subst] :
                                                                      ( !! @ subst
                                                                      @ ^ [Y3: subst] :
                                                                          ( !! @ subst
                                                                          @ ^ [Y4: subst] :
                                                                              ( ( Y0 @ Y2 @ Y1 @ ( comp @ Y4 @ Y3 ) )
                                                                             => ( Y0 @ ( comp @ Y2 @ Y4 ) @ ( sub @ Y1 @ Y4 ) @ Y3 ) ) ) ) ) )
                                                           => ( ( !! @ subst
                                                                @ ^ [Y1: subst] :
                                                                    ( !! @ term
                                                                    @ ^ [Y2: term] :
                                                                        ( !! @ subst
                                                                        @ ^ [Y3: subst] :
                                                                            ( !! @ subst
                                                                            @ ^ [Y4: subst] :
                                                                                ( ( Y0 @ ( comp @ Y3 @ Y4 ) @ ( sub @ Y2 @ Y4 ) @ Y1 )
                                                                               => ( Y0 @ Y3 @ Y2 @ ( comp @ Y4 @ Y1 ) ) ) ) ) ) )
                                                             => ( ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                           => ( Y0 @ id @ ( ap @ ( sub @ Y1 @ id ) @ Y2 ) @ id ) ) ) ) )
                                                               => ( !! @ term
                                                                  @ ^ [Y1: term] :
                                                                      ( !! @ term
                                                                      @ ^ [Y2: term] :
                                                                          ( ( Y0 @ id @ Y1 @ id )
                                                                         => ( ( Y0 @ id @ Y2 @ id )
                                                                           => ( Y0 @ id @ ( ap @ Y1 @ Y2 ) @ id ) ) ) ) ) ) ) ) )
                                                     => ( !! @ term
                                                        @ ^ [Y0: term] :
                                                            ( ?? @ ( subst > term > term )
                                                            @ ^ [Y1: subst > term > term] :
                                                                ( ( sub @ Y0 @ ( push @ one @ sh ) )
                                                                = ( Y1 @ sh @ one ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) ) )
    = $false ),
    inference(binary_proxy_clausification,[],[f501]) ).

%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% 0.08/0.13  % Problem    : ALG267^1 : TPTP v8.1.2. Bugfixed v5.2.0.
% 0.08/0.15  % Command    : vampire --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule file --schedule_file /export/starexec/sandbox/solver/bin/quickGreedyProduceRating_steal_pow3.txt --cores 8 -m 12000 -t %d %s
% 0.15/0.36  % Computer : n011.cluster.edu
% 0.15/0.36  % Model    : x86_64 x86_64
% 0.15/0.36  % CPU      : Intel(R) Xeon(R) CPU E5-2620 v4 @ 2.10GHz
% 0.15/0.36  % Memory   : 8042.1875MB
% 0.15/0.36  % OS       : Linux 3.10.0-693.el7.x86_64
% 0.15/0.36  % CPULimit   : 300
% 0.15/0.36  % WCLimit    : 300
% 0.15/0.36  % DateTime   : Fri May  3 20:01:38 EDT 2024
% 0.15/0.36  % CPUTime    : 
% 0.15/0.36  This is a TH0_THM_EQU_NAR problem
% 0.15/0.36  Running vampire_ho --input_syntax tptp --proof tptp --output_axiom_names on --mode portfolio --schedule snake_tptp_hol --cores 8 -m 12000 -t 300 /export/starexec/sandbox/tmp/tmp.YlQgltIeMe/Vampire---4.8_1736
% 0.15/0.39  % (1997)lrs+1002_1:8_bd=off:fd=off:hud=10:tnu=1:i=183:si=on:rtra=on_0 on Vampire---4 for (2999ds/183Mi)
% 0.15/0.39  % (1999)dis+1010_1:1_au=on:cbe=off:chr=on:fsr=off:hfsq=on:nm=64:sos=theory:sp=weighted_frequency:i=27:si=on:rtra=on_0 on Vampire---4 for (2999ds/27Mi)
% 0.15/0.39  % (2000)lrs+10_1:1_au=on:inj=on:i=2:si=on:rtra=on_0 on Vampire---4 for (2999ds/2Mi)
% 0.15/0.39  % (1998)lrs+10_1:1_c=on:cnfonf=conj_eager:fd=off:fe=off:kws=frequency:spb=intro:i=4:si=on:rtra=on_0 on Vampire---4 for (2999ds/4Mi)
% 0.15/0.39  % (2001)lrs+1002_1:128_aac=none:au=on:cnfonf=lazy_not_gen_be_off:sos=all:i=2:si=on:rtra=on_0 on Vampire---4 for (2999ds/2Mi)
% 0.15/0.39  % (2002)lrs+1002_1:1_au=on:bd=off:e2e=on:sd=2:sos=on:ss=axioms:i=275:si=on:rtra=on_0 on Vampire---4 for (2999ds/275Mi)
% 0.15/0.39  % (2003)lrs+1004_1:128_cond=on:e2e=on:sp=weighted_frequency:i=18:si=on:rtra=on_0 on Vampire---4 for (2999ds/18Mi)
% 0.15/0.39  % (2004)lrs+10_1:1_bet=on:cnfonf=off:fd=off:hud=5:inj=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.15/0.40  % (2000)Instruction limit reached!
% 0.15/0.40  % (2000)------------------------------
% 0.15/0.40  % (2000)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (2001)Instruction limit reached!
% 0.15/0.40  % (2001)------------------------------
% 0.15/0.40  % (2001)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (2000)Termination reason: Unknown
% 0.15/0.40  % (2000)Termination phase: shuffling
% 0.15/0.40  
% 0.15/0.40  % (2000)Memory used [KB]: 1279
% 0.15/0.40  % (2000)Time elapsed: 0.004 s
% 0.15/0.40  % (2000)Instructions burned: 3 (million)
% 0.15/0.40  % (2000)------------------------------
% 0.15/0.40  % (2000)------------------------------
% 0.15/0.40  % (2001)Termination reason: Unknown
% 0.15/0.40  % (2001)Termination phase: shuffling
% 0.15/0.40  
% 0.15/0.40  % (2001)Memory used [KB]: 1279
% 0.15/0.40  % (2001)Time elapsed: 0.004 s
% 0.15/0.40  % (2001)Instructions burned: 3 (million)
% 0.15/0.40  % (2001)------------------------------
% 0.15/0.40  % (2001)------------------------------
% 0.15/0.40  % (1998)Instruction limit reached!
% 0.15/0.40  % (1998)------------------------------
% 0.15/0.40  % (1998)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (1998)Termination reason: Unknown
% 0.15/0.40  % (1998)Termination phase: shuffling
% 0.15/0.40  
% 0.15/0.40  % (1998)Memory used [KB]: 1279
% 0.15/0.40  % (1998)Time elapsed: 0.004 s
% 0.15/0.40  % (1998)Instructions burned: 4 (million)
% 0.15/0.40  % (1998)------------------------------
% 0.15/0.40  % (1998)------------------------------
% 0.15/0.40  % (2004)Instruction limit reached!
% 0.15/0.40  % (2004)------------------------------
% 0.15/0.40  % (2004)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.15/0.40  % (2004)Termination reason: Unknown
% 0.15/0.40  % (2004)Termination phase: shuffling
% 0.15/0.40  
% 0.15/0.40  % (2004)Memory used [KB]: 1279
% 0.15/0.40  % (2004)Time elapsed: 0.004 s
% 0.15/0.40  % (2004)Instructions burned: 4 (million)
% 0.15/0.40  % (2004)------------------------------
% 0.15/0.40  % (2004)------------------------------
% 0.22/0.41  % (2003)Instruction limit reached!
% 0.22/0.41  % (2003)------------------------------
% 0.22/0.41  % (2003)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.41  % (2003)Termination reason: Unknown
% 0.22/0.41  % (2003)Termination phase: Property scanning
% 0.22/0.41  
% 0.22/0.41  % (2003)Memory used [KB]: 1663
% 0.22/0.41  % (2003)Time elapsed: 0.014 s
% 0.22/0.41  % (2003)Instructions burned: 20 (million)
% 0.22/0.41  % (2003)------------------------------
% 0.22/0.41  % (2003)------------------------------
% 0.22/0.41  % (1999)Instruction limit reached!
% 0.22/0.41  % (1999)------------------------------
% 0.22/0.41  % (1999)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.41  % (1999)Termination reason: Unknown
% 0.22/0.41  % (1999)Termination phase: shuffling
% 0.22/0.41  
% 0.22/0.41  % (1999)Memory used [KB]: 1791
% 0.22/0.41  % (1999)Time elapsed: 0.016 s
% 0.22/0.41  % (1999)Instructions burned: 27 (million)
% 0.22/0.41  % (1999)------------------------------
% 0.22/0.41  % (1999)------------------------------
% 0.22/0.41  % (2005)lrs+1002_1:1_cnfonf=lazy_not_be_gen:hud=14:prag=on:sp=weighted_frequency:tnu=1:i=37:si=on:rtra=on_0 on Vampire---4 for (2999ds/37Mi)
% 0.22/0.41  % (2006)lrs+2_16:1_acc=model:au=on:bd=off:c=on:e2e=on:nm=2:sos=all:i=15:si=on:rtra=on_0 on Vampire---4 for (2999ds/15Mi)
% 0.22/0.41  % (2007)dis+21_1:1_cbe=off:cnfonf=off:fs=off:fsr=off:hud=1:inj=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.22/0.41  % (2008)lrs+1002_1:1_aac=none:au=on:cnfonf=lazy_gen:plsq=on:plsqc=1:plsqr=4203469,65536:i=1041:si=on:rtra=on_0 on Vampire---4 for (2999ds/1041Mi)
% 0.22/0.41  % (2007)Instruction limit reached!
% 0.22/0.41  % (2007)------------------------------
% 0.22/0.41  % (2007)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.41  % (2007)Termination reason: Unknown
% 0.22/0.41  % (2007)Termination phase: shuffling
% 0.22/0.41  
% 0.22/0.41  % (2007)Memory used [KB]: 1279
% 0.22/0.41  % (2007)Time elapsed: 0.004 s
% 0.22/0.41  % (2007)Instructions burned: 3 (million)
% 0.22/0.41  % (2007)------------------------------
% 0.22/0.41  % (2007)------------------------------
% 0.22/0.42  % (2002)Refutation not found, incomplete strategy
% 0.22/0.42  % (2002)------------------------------
% 0.22/0.42  % (2002)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (2002)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.42  
% 0.22/0.42  
% 0.22/0.42  % (2002)Memory used [KB]: 6268
% 0.22/0.42  % (2002)Time elapsed: 0.024 s
% 0.22/0.42  % (2002)Instructions burned: 36 (million)
% 0.22/0.42  % (2002)------------------------------
% 0.22/0.42  % (2002)------------------------------
% 0.22/0.42  % (2006)Instruction limit reached!
% 0.22/0.42  % (2006)------------------------------
% 0.22/0.42  % (2006)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.42  % (2006)Termination reason: Unknown
% 0.22/0.42  % (2006)Termination phase: Property scanning
% 0.22/0.42  
% 0.22/0.42  % (2006)Memory used [KB]: 1663
% 0.22/0.42  % (2006)Time elapsed: 0.012 s
% 0.22/0.42  % (2006)Instructions burned: 16 (million)
% 0.22/0.42  % (2006)------------------------------
% 0.22/0.42  % (2006)------------------------------
% 0.22/0.42  % (2009)lrs+10_1:1_av=off:chr=on:plsq=on:slsq=on:i=7:si=on:rtra=on_0 on Vampire---4 for (2999ds/7Mi)
% 0.22/0.42  % (2010)lrs+10_1:1_acc=on:amm=sco:cs=on:tgt=full:i=16:si=on:rtra=on_0 on Vampire---4 for (2999ds/16Mi)
% 0.22/0.42  % (2009)Instruction limit reached!
% 0.22/0.42  % (2009)------------------------------
% 0.22/0.42  % (2009)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (2009)Termination reason: Unknown
% 0.22/0.43  % (2009)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (2009)Memory used [KB]: 1407
% 0.22/0.43  % (2009)Time elapsed: 0.006 s
% 0.22/0.43  % (2009)Instructions burned: 7 (million)
% 0.22/0.43  % (2009)------------------------------
% 0.22/0.43  % (2009)------------------------------
% 0.22/0.43  % (2011)lrs+21_1:1_au=on:cnfonf=off:fd=preordered:fe=off:fsr=off:hud=11:inj=on:kws=precedence:s2pl=no:sp=weighted_frequency:tgt=full:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.22/0.43  % (2005)Instruction limit reached!
% 0.22/0.43  % (2005)------------------------------
% 0.22/0.43  % (2005)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (2005)Termination reason: Unknown
% 0.22/0.43  % (2005)Termination phase: Property scanning
% 0.22/0.43  
% 0.22/0.43  % (2005)Memory used [KB]: 1791
% 0.22/0.43  % (2005)Time elapsed: 0.020 s
% 0.22/0.43  % (2005)Instructions burned: 38 (million)
% 0.22/0.43  % (2005)------------------------------
% 0.22/0.43  % (2005)------------------------------
% 0.22/0.43  % (2011)Instruction limit reached!
% 0.22/0.43  % (2011)------------------------------
% 0.22/0.43  % (2011)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (2011)Termination reason: Unknown
% 0.22/0.43  % (2011)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (2011)Memory used [KB]: 1279
% 0.22/0.43  % (2011)Time elapsed: 0.004 s
% 0.22/0.43  % (2011)Instructions burned: 3 (million)
% 0.22/0.43  % (2011)------------------------------
% 0.22/0.43  % (2011)------------------------------
% 0.22/0.43  % (2010)Instruction limit reached!
% 0.22/0.43  % (2010)------------------------------
% 0.22/0.43  % (2010)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (2010)Termination reason: Unknown
% 0.22/0.43  % (2010)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (2010)Memory used [KB]: 1535
% 0.22/0.43  % (2010)Time elapsed: 0.011 s
% 0.22/0.43  % (2010)Instructions burned: 17 (million)
% 0.22/0.43  % (2010)------------------------------
% 0.22/0.43  % (2010)------------------------------
% 0.22/0.43  % (2012)lrs+2_1:1_apa=on:au=on:bd=preordered:cnfonf=off:cs=on:ixr=off:sos=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.22/0.43  % (2012)Instruction limit reached!
% 0.22/0.43  % (2012)------------------------------
% 0.22/0.43  % (2012)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.43  % (2012)Termination reason: Unknown
% 0.22/0.43  % (2012)Termination phase: shuffling
% 0.22/0.43  
% 0.22/0.43  % (2012)Memory used [KB]: 1279
% 0.22/0.43  % (2012)Time elapsed: 0.004 s
% 0.22/0.43  % (2012)Instructions burned: 3 (million)
% 0.22/0.43  % (2012)------------------------------
% 0.22/0.43  % (2012)------------------------------
% 0.22/0.44  % (2013)lrs+10_1:1_cnfonf=off:cs=on:hud=3:prag=on:sup=off:i=7:si=on:rtra=on_0 on Vampire---4 for (2999ds/7Mi)
% 0.22/0.44  % (2013)Instruction limit reached!
% 0.22/0.44  % (2013)------------------------------
% 0.22/0.44  % (2013)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.44  % (2013)Termination reason: Unknown
% 0.22/0.44  % (2013)Termination phase: shuffling
% 0.22/0.44  
% 0.22/0.44  % (2013)Memory used [KB]: 1407
% 0.22/0.44  % (2013)Time elapsed: 0.006 s
% 0.22/0.44  % (2013)Instructions burned: 7 (million)
% 0.22/0.44  % (2013)------------------------------
% 0.22/0.44  % (2013)------------------------------
% 0.22/0.44  % (2014)dis+1002_1:1_add=large:cnfonf=lazy_pi_sigma_gen:fe=off:prag=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2999ds/3Mi)
% 0.22/0.44  % (2014)Instruction limit reached!
% 0.22/0.44  % (2014)------------------------------
% 0.22/0.44  % (2014)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.44  % (2014)Termination reason: Unknown
% 0.22/0.44  % (2014)Termination phase: shuffling
% 0.22/0.44  
% 0.22/0.44  % (2014)Memory used [KB]: 1279
% 0.22/0.44  % (2014)Time elapsed: 0.004 s
% 0.22/0.44  % (2014)Instructions burned: 3 (million)
% 0.22/0.44  % (2014)------------------------------
% 0.22/0.44  % (2014)------------------------------
% 0.22/0.45  % (2016)lrs+1002_1:1_anc=all_dependent:au=on:cbe=off:fde=unused:ntd=on:i=18:si=on:rtra=on_0 on Vampire---4 for (2999ds/18Mi)
% 0.22/0.45  % (2015)dis+1004_1:1_cha=on:cs=on:fe=off:hud=1:i=4:si=on:rtra=on_0 on Vampire---4 for (2999ds/4Mi)
% 0.22/0.45  % (2017)lrs+10_1:1_e2e=on:sd=1:sgt=8:ss=axioms:i=710:si=on:rtra=on_0 on Vampire---4 for (2999ds/710Mi)
% 0.22/0.45  % (2015)Instruction limit reached!
% 0.22/0.45  % (2015)------------------------------
% 0.22/0.45  % (2015)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.45  % (2015)Termination reason: Unknown
% 0.22/0.45  % (2015)Termination phase: shuffling
% 0.22/0.45  
% 0.22/0.45  % (2015)Memory used [KB]: 1279
% 0.22/0.45  % (2015)Time elapsed: 0.004 s
% 0.22/0.45  % (2015)Instructions burned: 4 (million)
% 0.22/0.45  % (2015)------------------------------
% 0.22/0.45  % (2015)------------------------------
% 0.22/0.45  % (2018)lrs+1004_1:1_chr=on:prag=on:i=6:si=on:rtra=on_0 on Vampire---4 for (2999ds/6Mi)
% 0.22/0.45  % (2018)Instruction limit reached!
% 0.22/0.45  % (2018)------------------------------
% 0.22/0.45  % (2018)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.45  % (2018)Termination reason: Unknown
% 0.22/0.45  % (2018)Termination phase: shuffling
% 0.22/0.45  
% 0.22/0.45  % (2018)Memory used [KB]: 1279
% 0.22/0.45  % (2018)Time elapsed: 0.005 s
% 0.22/0.45  % (2018)Instructions burned: 6 (million)
% 0.22/0.45  % (2018)------------------------------
% 0.22/0.45  % (2018)------------------------------
% 0.22/0.45  % (2016)Instruction limit reached!
% 0.22/0.45  % (2016)------------------------------
% 0.22/0.45  % (2016)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.45  % (2016)Termination reason: Unknown
% 0.22/0.45  % (2016)Termination phase: shuffling
% 0.22/0.45  
% 0.22/0.45  % (2016)Memory used [KB]: 1535
% 0.22/0.45  % (2016)Time elapsed: 0.011 s
% 0.22/0.45  % (2016)Instructions burned: 18 (million)
% 0.22/0.45  % (2016)------------------------------
% 0.22/0.45  % (2016)------------------------------
% 0.22/0.45  % (2019)dis+1002_5:1_au=on:bd=off:e2e=on:fde=none:fs=off:fsr=off:sos=on:i=902:si=on:rtra=on_0 on Vampire---4 for (2999ds/902Mi)
% 0.22/0.46  % (2021)dis+21_1:8_apa=on:cnfonf=off:fd=off:fsr=off:hud=0:ins=1:kws=inv_frequency:nwc=10.0:ss=axioms:st=5.0:i=21:si=on:rtra=on_0 on Vampire---4 for (2999ds/21Mi)
% 0.22/0.46  % (2023)dis+10_1:1_cnfonf=lazy_gen:fe=off:i=5:si=on:rtra=on_0 on Vampire---4 for (2999ds/5Mi)
% 0.22/0.47  % (2017)Refutation not found, incomplete strategy
% 0.22/0.47  % (2017)------------------------------
% 0.22/0.47  % (2017)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.47  % (2017)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.47  
% 0.22/0.47  
% 0.22/0.47  % (2017)Memory used [KB]: 6268
% 0.22/0.47  % (2017)Time elapsed: 0.043 s
% 0.22/0.47  % (2017)Instructions burned: 29 (million)
% 0.22/0.47  % (2017)------------------------------
% 0.22/0.47  % (2017)------------------------------
% 0.22/0.47  % (2023)Instruction limit reached!
% 0.22/0.47  % (2023)------------------------------
% 0.22/0.47  % (2023)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.47  % (2023)Termination reason: Unknown
% 0.22/0.47  % (2023)Termination phase: shuffling
% 0.22/0.47  
% 0.22/0.47  % (2023)Memory used [KB]: 1279
% 0.22/0.47  % (2023)Time elapsed: 0.006 s
% 0.22/0.47  % (2023)Instructions burned: 5 (million)
% 0.22/0.47  % (2023)------------------------------
% 0.22/0.47  % (2023)------------------------------
% 0.22/0.47  % (2024)lrs+2_1:1_cnfonf=lazy_not_gen_be_off:cs=on:fe=off:hud=10:inj=on:ins=3:plsq=on:plsqc=1:sd=10:ss=axioms:tnu=1:i=6:si=on:rtra=on_0 on Vampire---4 for (2999ds/6Mi)
% 0.22/0.47  % (2021)Instruction limit reached!
% 0.22/0.47  % (2021)------------------------------
% 0.22/0.47  % (2021)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.47  % (2021)Termination reason: Unknown
% 0.22/0.47  % (2021)Termination phase: shuffling
% 0.22/0.47  
% 0.22/0.47  % (2021)Memory used [KB]: 1663
% 0.22/0.47  % (2021)Time elapsed: 0.015 s
% 0.22/0.47  % (2021)Instructions burned: 21 (million)
% 0.22/0.47  % (2021)------------------------------
% 0.22/0.47  % (2021)------------------------------
% 0.22/0.47  % (2025)lrs+1002_1:128_au=on:c=on:fsr=off:piset=equals:i=377:si=on:rtra=on_0 on Vampire---4 for (2999ds/377Mi)
% 0.22/0.48  % (2024)Instruction limit reached!
% 0.22/0.48  % (2024)------------------------------
% 0.22/0.48  % (2024)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.48  % (2024)Termination reason: Unknown
% 0.22/0.48  % (2024)Termination phase: shuffling
% 0.22/0.48  
% 0.22/0.48  % (2024)Memory used [KB]: 1279
% 0.22/0.48  % (2024)Time elapsed: 0.008 s
% 0.22/0.48  % (2024)Instructions burned: 6 (million)
% 0.22/0.48  % (2024)------------------------------
% 0.22/0.48  % (2024)------------------------------
% 0.22/0.49  % (1997)Instruction limit reached!
% 0.22/0.49  % (1997)------------------------------
% 0.22/0.49  % (1997)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.49  % (1997)Termination reason: Unknown
% 0.22/0.49  % (1997)Termination phase: Saturation
% 0.22/0.49  
% 0.22/0.49  % (1997)Memory used [KB]: 6652
% 0.22/0.49  % (1997)Time elapsed: 0.095 s
% 0.22/0.49  % (1997)Instructions burned: 184 (million)
% 0.22/0.49  % (1997)------------------------------
% 0.22/0.49  % (1997)------------------------------
% 0.22/0.49  % (2034)lrs+10_1:1_cnfonf=lazy_not_be_gen:ntd=on:sp=const_min:ss=axioms:sup=off:i=19:si=on:rtra=on_0 on Vampire---4 for (2999ds/19Mi)
% 0.22/0.49  % (2033)dis+1010_1:4_atotf=0.2:c=on:cbe=off:cnfonf=lazy_simp:fe=off:ins=2:ntd=on:s2a=on:s2at=5.0:sgt=5:ss=axioms:st=1.5:i=779:si=on:rtra=on_0 on Vampire---4 for (2999ds/779Mi)
% 0.22/0.50  % (2036)lrs+1010_1:1_au=on:s2a=on:sd=1:sgt=50:ss=axioms:i=879:si=on:rtra=on_0 on Vampire---4 for (2999ds/879Mi)
% 0.22/0.50  % (2038)ott+21_1:1_apa=on:au=on:cnfonf=off:sos=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2998ds/3Mi)
% 0.22/0.50  % (2037)dis+1002_1:128_acc=on:er=filter:i=17:si=on:rtra=on_0 on Vampire---4 for (2998ds/17Mi)
% 0.22/0.51  % (2038)Instruction limit reached!
% 0.22/0.51  % (2038)------------------------------
% 0.22/0.51  % (2038)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.51  % (2038)Termination reason: Unknown
% 0.22/0.51  % (2038)Termination phase: shuffling
% 0.22/0.51  
% 0.22/0.51  % (2038)Memory used [KB]: 1279
% 0.22/0.51  % (2038)Time elapsed: 0.004 s
% 0.22/0.51  % (2038)Instructions burned: 4 (million)
% 0.22/0.51  % (2038)------------------------------
% 0.22/0.51  % (2038)------------------------------
% 0.22/0.51  % (2034)Instruction limit reached!
% 0.22/0.51  % (2034)------------------------------
% 0.22/0.51  % (2034)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.51  % (2034)Termination reason: Unknown
% 0.22/0.51  % (2034)Termination phase: shuffling
% 0.22/0.51  
% 0.22/0.51  % (2034)Memory used [KB]: 1663
% 0.22/0.51  % (2034)Time elapsed: 0.017 s
% 0.22/0.51  % (2034)Instructions burned: 19 (million)
% 0.22/0.51  % (2034)------------------------------
% 0.22/0.51  % (2034)------------------------------
% 0.22/0.52  % (2037)Instruction limit reached!
% 0.22/0.52  % (2037)------------------------------
% 0.22/0.52  % (2037)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.52  % (2037)Termination reason: Unknown
% 0.22/0.52  % (2037)Termination phase: shuffling
% 0.22/0.52  
% 0.22/0.52  % (2037)Memory used [KB]: 1663
% 0.22/0.52  % (2037)Time elapsed: 0.015 s
% 0.22/0.52  % (2037)Instructions burned: 18 (million)
% 0.22/0.52  % (2037)------------------------------
% 0.22/0.52  % (2037)------------------------------
% 0.22/0.52  % (2039)lrs+1010_1:8_cnfonf=off:hud=1:inj=on:tnu=5:i=30:si=on:rtra=on_0 on Vampire---4 for (2998ds/30Mi)
% 0.22/0.53  % (2039)Instruction limit reached!
% 0.22/0.53  % (2039)------------------------------
% 0.22/0.53  % (2039)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.53  % (2039)Termination reason: Unknown
% 0.22/0.53  % (2039)Termination phase: Property scanning
% 0.22/0.53  
% 0.22/0.53  % (2039)Memory used [KB]: 1791
% 0.22/0.53  % (2039)Time elapsed: 0.010 s
% 0.22/0.53  % (2039)Instructions burned: 30 (million)
% 0.22/0.53  % (2039)------------------------------
% 0.22/0.53  % (2039)------------------------------
% 0.22/0.53  % (2040)dis+10_1:1_ixr=off:plsq=on:plsqc=1:plsqr=32,1:s2a=on:i=127:si=on:rtra=on_0 on Vampire---4 for (2998ds/127Mi)
% 0.22/0.53  % (2041)lrs+1002_1:1_au=on:cbe=off:cnfonf=conj_eager:cond=on:hi=on:i=100:si=on:rtra=on_0 on Vampire---4 for (2998ds/100Mi)
% 0.22/0.54  % (2036)Refutation not found, incomplete strategy
% 0.22/0.54  % (2036)------------------------------
% 0.22/0.54  % (2036)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.54  % (2036)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.54  
% 0.22/0.54  
% 0.22/0.54  % (2036)Memory used [KB]: 6268
% 0.22/0.54  % (2036)Time elapsed: 0.040 s
% 0.22/0.54  % (2036)Instructions burned: 61 (million)
% 0.22/0.54  % (2036)------------------------------
% 0.22/0.54  % (2036)------------------------------
% 0.22/0.54  % (2043)dis+10_1:1_anc=none:cnfonf=lazy_gen:fd=preordered:fe=off:hud=10:ins=3:ixr=off:nwc=5.0:plsq=on:plsqc=1:plsqr=32,1:sp=const_frequency:uhcvi=on:i=3:si=on:rtra=on_0 on Vampire---4 for (2998ds/3Mi)
% 0.22/0.54  % (2043)Instruction limit reached!
% 0.22/0.54  % (2043)------------------------------
% 0.22/0.54  % (2043)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.54  % (2043)Termination reason: Unknown
% 0.22/0.54  % (2043)Termination phase: shuffling
% 0.22/0.54  
% 0.22/0.54  % (2043)Memory used [KB]: 1279
% 0.22/0.54  % (2043)Time elapsed: 0.003 s
% 0.22/0.54  % (2043)Instructions burned: 3 (million)
% 0.22/0.54  % (2043)------------------------------
% 0.22/0.54  % (2043)------------------------------
% 0.22/0.55  % (2045)lrs+10_8:1_au=on:avsq=on:e2e=on:ins=3:s2a=on:s2at=3.0:ss=axioms:i=20:si=on:rtra=on_0 on Vampire---4 for (2998ds/20Mi)
% 0.22/0.55  % (2046)dis+1002_1:1_cbe=off:hud=5:nm=4:plsq=on:plsqr=7,1:prag=on:sp=const_max:tnu=1:i=86:si=on:rtra=on_0 on Vampire---4 for (2998ds/86Mi)
% 0.22/0.55  % (2045)Instruction limit reached!
% 0.22/0.55  % (2045)------------------------------
% 0.22/0.55  % (2045)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.55  % (2045)Termination reason: Unknown
% 0.22/0.55  % (2045)Termination phase: Property scanning
% 0.22/0.55  
% 0.22/0.55  % (2045)Memory used [KB]: 1663
% 0.22/0.55  % (2045)Time elapsed: 0.009 s
% 0.22/0.55  % (2045)Instructions burned: 22 (million)
% 0.22/0.55  % (2045)------------------------------
% 0.22/0.55  % (2045)------------------------------
% 0.22/0.56  % (2041)Instruction limit reached!
% 0.22/0.56  % (2041)------------------------------
% 0.22/0.56  % (2041)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.56  % (2041)Termination reason: Unknown
% 0.22/0.56  % (2041)Termination phase: Saturation
% 0.22/0.56  
% 0.22/0.56  % (2041)Memory used [KB]: 6524
% 0.22/0.56  % (2041)Time elapsed: 0.031 s
% 0.22/0.56  % (2041)Instructions burned: 102 (million)
% 0.22/0.56  % (2041)------------------------------
% 0.22/0.56  % (2041)------------------------------
% 0.22/0.56  % (2048)lrs+1010_1:1_au=on:cbe=off:nm=2:ntd=on:sd=2:ss=axioms:st=5.0:i=107:si=on:rtra=on_0 on Vampire---4 for (2998ds/107Mi)
% 0.22/0.57  % (2046)Instruction limit reached!
% 0.22/0.57  % (2046)------------------------------
% 0.22/0.57  % (2046)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.57  % (2046)Termination reason: Unknown
% 0.22/0.57  % (2046)Termination phase: Property scanning
% 0.22/0.57  
% 0.22/0.57  % (2046)Memory used [KB]: 2046
% 0.22/0.57  % (2046)Time elapsed: 0.024 s
% 0.22/0.57  % (2046)Instructions burned: 88 (million)
% 0.22/0.57  % (2046)------------------------------
% 0.22/0.57  % (2046)------------------------------
% 0.22/0.57  % (2040)Instruction limit reached!
% 0.22/0.57  % (2040)------------------------------
% 0.22/0.57  % (2040)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.57  % (2040)Termination reason: Unknown
% 0.22/0.57  % (2040)Termination phase: Saturation
% 0.22/0.57  
% 0.22/0.57  % (2040)Memory used [KB]: 6524
% 0.22/0.57  % (2040)Time elapsed: 0.041 s
% 0.22/0.57  % (2040)Instructions burned: 127 (million)
% 0.22/0.57  % (2040)------------------------------
% 0.22/0.57  % (2040)------------------------------
% 0.22/0.57  % (2049)lrs+2_1:1024_cnfonf=lazy_gen:fe=off:hud=15:plsq=on:plsqc=1:plsqr=32,1:i=39:si=on:rtra=on_0 on Vampire---4 for (2998ds/39Mi)
% 0.22/0.57  % (2019)Refutation not found, incomplete strategy
% 0.22/0.57  % (2019)------------------------------
% 0.22/0.57  % (2019)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.57  % (2019)Termination reason: Refutation not found, incomplete strategy
% 0.22/0.57  
% 0.22/0.57  
% 0.22/0.57  % (2019)Memory used [KB]: 8187
% 0.22/0.57  % (2019)Time elapsed: 0.145 s
% 0.22/0.57  % (2019)Instructions burned: 214 (million)
% 0.22/0.57  % (2019)------------------------------
% 0.22/0.57  % (2019)------------------------------
% 0.22/0.58  % (2050)dis+10_1:1_cnfonf=lazy_not_gen:fsr=off:kws=precedence:nwc=5.0:s2a=on:ss=axioms:st=1.5:i=448:si=on:rtra=on_0 on Vampire---4 for (2998ds/448Mi)
% 0.22/0.58  % (2051)lrs+10_1:512_au=on:fde=unused:lma=on:nm=32:plsq=on:plsqc=1:plsqr=16121663,131072:sfv=off:sp=const_max:ss=axioms:st=3.0:tgt=full:i=46:si=on:rtra=on_0 on Vampire---4 for (2998ds/46Mi)
% 0.22/0.58  % (2049)Instruction limit reached!
% 0.22/0.58  % (2049)------------------------------
% 0.22/0.58  % (2049)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 0.22/0.58  % (2049)Termination reason: Unknown
% 0.22/0.58  % (2049)Termination phase: Property scanning
% 0.22/0.58  
% 0.22/0.58  % (2049)Memory used [KB]: 1791
% 0.22/0.58  % (2049)Time elapsed: 0.012 s
% 0.22/0.58  % (2049)Instructions burned: 40 (million)
% 0.22/0.58  % (2049)------------------------------
% 0.22/0.58  % (2049)------------------------------
% 0.22/0.58  % (2054)lrs+10_1:10_au=on:av=off:cbe=off:cnfonf=lazy_pi_sigma_gen:ntd=on:plsq=on:plsqc=1:plsqr=32,1:i=98:si=on:rtra=on_0 on Vampire---4 for (2998ds/98Mi)
% 1.71/0.59  % (2057)ott+1002_1:1_apa=on:au=on:bd=off:cnfonf=off:fd=off:sos=on:sp=weighted_frequency:i=507:si=on:rtra=on_0 on Vampire---4 for (2997ds/507Mi)
% 1.71/0.59  % (2051)Instruction limit reached!
% 1.71/0.59  % (2051)------------------------------
% 1.71/0.59  % (2051)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.71/0.59  % (2051)Termination reason: Unknown
% 1.71/0.59  % (2051)Termination phase: SInE selection
% 1.71/0.59  
% 1.71/0.59  % (2051)Memory used [KB]: 1791
% 1.71/0.59  % (2051)Time elapsed: 0.014 s
% 1.71/0.59  % (2051)Instructions burned: 46 (million)
% 1.71/0.59  % (2051)------------------------------
% 1.71/0.59  % (2051)------------------------------
% 1.71/0.59  % (2048)Instruction limit reached!
% 1.71/0.59  % (2048)------------------------------
% 1.71/0.59  % (2048)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.71/0.59  % (2048)Termination reason: Unknown
% 1.71/0.59  % (2048)Termination phase: Saturation
% 1.71/0.59  
% 1.71/0.59  % (2048)Memory used [KB]: 6396
% 1.71/0.59  % (2048)Time elapsed: 0.030 s
% 1.71/0.59  % (2048)Instructions burned: 107 (million)
% 1.71/0.59  % (2048)------------------------------
% 1.71/0.59  % (2048)------------------------------
% 1.71/0.60  % (2063)dis+1010_2:3_amm=off:fd=preordered:ixr=off:nm=0:pe=on:piset=equals:prag=on:sac=on:tgt=ground:i=149:si=on:rtra=on_0 on Vampire---4 for (2997ds/149Mi)
% 1.71/0.60  % (2064)lrs+21_1:16_au=on:bd=off:piset=and:i=39:si=on:rtra=on_0 on Vampire---4 for (2997ds/39Mi)
% 1.71/0.60  % (2033)First to succeed.
% 1.88/0.61  % (2054)Instruction limit reached!
% 1.88/0.61  % (2054)------------------------------
% 1.88/0.61  % (2054)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.88/0.61  % (2054)Termination reason: Unknown
% 1.88/0.61  % (2054)Termination phase: Saturation
% 1.88/0.61  
% 1.88/0.61  % (2054)Memory used [KB]: 2046
% 1.88/0.61  % (2054)Time elapsed: 0.026 s
% 1.88/0.61  % (2054)Instructions burned: 99 (million)
% 1.88/0.61  % (2054)------------------------------
% 1.88/0.61  % (2054)------------------------------
% 1.88/0.61  % (2064)Instruction limit reached!
% 1.88/0.61  % (2064)------------------------------
% 1.88/0.61  % (2064)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.88/0.61  % (2064)Termination reason: Unknown
% 1.88/0.61  % (2064)Termination phase: Property scanning
% 1.88/0.61  
% 1.88/0.61  % (2064)Memory used [KB]: 1791
% 1.88/0.61  % (2064)Time elapsed: 0.012 s
% 1.88/0.61  % (2064)Instructions burned: 39 (million)
% 1.88/0.61  % (2064)------------------------------
% 1.88/0.61  % (2064)------------------------------
% 1.88/0.62  % (2073)lrs+1004_1:1_cnfonf=lazy_pi_sigma_gen:fe=off:gs=on:hud=10:prag=on:tnu=1:i=6:si=on:rtra=on_0 on Vampire---4 for (2997ds/6Mi)
% 1.88/0.62  % (2073)Instruction limit reached!
% 1.88/0.62  % (2073)------------------------------
% 1.88/0.62  % (2073)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.88/0.62  % (2073)Termination reason: Unknown
% 1.88/0.62  % (2073)Termination phase: shuffling
% 1.88/0.62  
% 1.88/0.62  % (2073)Memory used [KB]: 1407
% 1.88/0.62  % (2073)Time elapsed: 0.003 s
% 1.88/0.62  % (2073)Instructions burned: 7 (million)
% 1.88/0.62  % (2073)------------------------------
% 1.88/0.62  % (2073)------------------------------
% 1.88/0.62  % (2075)dis+1002_1:1_aac=none:au=on:e2e=on:nm=2:nwc=10.0:sd=1:ss=axioms:st=3.0:i=1087:si=on:rtra=on_0 on Vampire---4 for (2997ds/1087Mi)
% 1.88/0.63  % (2079)dis+10_1:1_aac=none:cs=on:i=47:si=on:rtra=on_0 on Vampire---4 for (2997ds/47Mi)
% 1.88/0.63  % (2075)Refutation not found, incomplete strategy
% 1.88/0.63  % (2075)------------------------------
% 1.88/0.63  % (2075)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 1.88/0.63  % (2075)Termination reason: Refutation not found, incomplete strategy
% 1.88/0.63  
% 1.88/0.63  
% 1.88/0.63  % (2075)Memory used [KB]: 6268
% 1.88/0.63  % (2075)Time elapsed: 0.011 s
% 1.88/0.63  % (2075)Instructions burned: 29 (million)
% 1.88/0.63  % (2075)------------------------------
% 1.88/0.63  % (2075)------------------------------
% 2.05/0.64  % (2085)lrs+1010_1:128_av=off:cbe=off:cnfonf=lazy_simp:fsr=off:ntd=on:ss=axioms:st=1.5:i=44:si=on:rtra=on_0 on Vampire---4 for (2997ds/44Mi)
% 2.05/0.64  % (2033)Refutation found. Thanks to Tanya!
% 2.05/0.64  % SZS status Theorem for Vampire---4
% 2.05/0.64  % SZS output start Proof for Vampire---4
% See solution above
% 2.05/0.64  % (2033)------------------------------
% 2.05/0.64  % (2033)Version: Vampire 4.8 HO - Sledgehammer schedules (2023-10-19)
% 2.05/0.64  % (2033)Termination reason: Refutation
% 2.05/0.64  
% 2.05/0.64  % (2033)Memory used [KB]: 10490
% 2.05/0.64  % (2033)Time elapsed: 0.146 s
% 2.05/0.64  % (2033)Instructions burned: 298 (million)
% 2.05/0.64  % (2033)------------------------------
% 2.05/0.64  % (2033)------------------------------
% 2.05/0.64  % (1996)Success in time 0.257 s
% 2.05/0.64  % Vampire---4.8 exiting
%------------------------------------------------------------------------------